## Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

### Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

# I literally have no idea on how to do this, help?

Been on this a while and im really confused

MathHelpers.cs
```namespace Treehouse.CodeChallenges
{
public static class MathHelpers
{
public List<int> GetPowersOf2(int value)
{
return powers[value];
}
}
}
```

Deleted my potentially unhelpful responses - hopefully somebody can help you out in a timely fashion. :)

You were off to a good start! It's confusing at first but once you break it up it becomes a bit easier to understand. You set up the method correctly, by both declaring the return type to be a List<int>, and setting the correct parameters on GetPowersOf2, all you need to do now is set up the list to return, and then perform the Math.Pow operation.

Because we're using both List<T> and Math classes, you'll have to add the correct using directives up top to start,

```using System;
using System.Collections.Generic;
```

Next, inside your method, instantiate a new variable called returnList so we can return the list of integers to the method

```public static List<int> GetPowersOf2(int input)
{
var returnList = new List<int>();
```

Then create a for loop to populate the list! Setting up the for loop is pretty straightforward, but you have to remember to set your limit to be less than or equal to input otherwise your list will be one integer short (i < input +1 also works). The return block is the tricky part. We have to use the Add method on our new returnList variable to add our integers to the list, and inside the Add method we can directly call Math.Pow, which takes two parameters. The challenge wants every integer to be raised to the value of 2, making our first parameter the number 2! The next parameter is i from our for loop, which is every number up to our users input raised to the power of 2. However Math.Pow only takes the type double, so you'll want to use type-casting and change the return type to int by placing (int) just before Math.Pow()

```            for (int i = 0; i <= input; i++)
{
```            return returnList;