# It's a Bit of a Stretch․․․

## Jelly, 9 bytes

```
BmxJ$mḄð€
```

Try it online!

`-1`

for left, `1`

for right.

## Python 2, ~~102~~ 96 bytes

```
lambda d,n:[int(''.join(c*-~i for i,c in enumerate(bin(x+1)[2:][::d]))[::d],2)for x in range(n)]
```

-1 for left, 1 for right

Try it online!

## 05AB1E, ~~14~~ 13 bytes

Saved 1 byte thanks to *Erik the Outgolfer*

```
LbεIiRƶRëƶ}JC
```

`1`

for left.

`0`

(or anything else) for right.

Try it online!

**Explanation**

```
L # push range [1 ... first_input]
b # convert to binary
ε # apply to each
Ii # if second_input is true
RƶR # reverse, multiply each element with its 1-based index and reverse again
ëƶ # else, multiply each element with its 1-based index
} # end if
J # join
C # convert to base-10
```