init todo3, data transposition performance

doesn't work yet, just commiting progress