good things to know about how indexing works
The indices for a Vector, or a column or row of a Matrix start at 1
```
length(avector) # gets the number of elements in avector
avector[1] # gets the first item in avector
avector[end] # gets the final item in avector
avector[1:end] # gets all elements of avector
int_column_vector = [10, 20, 30]
10
20
30
int_column_vector[1]
10
# do not use zero as an index
int_column_vector[ 0 ]
ERROR: BoundsError:
# do not use false, true as indices because avec[ false ] means avec[ 0 ]
```
in ` w[1,(w[1].<z)&(w[1].>-(z))] = 0 `, the second index can simplify to `false` (consider this)
```
avec = [ 10, 20, 30 ]
avec1 = avec[ 1 ]
avec1 == avec[ 1 + false ]
avec2 = avec[ 2 ]
avec2 == avec[ 1 + true ]
```
As a start, recheck indexing expressions, be more sure they do what you want them to do.