finally worked out what I was doing wrong all this time. God dam it.