fixed struct stuff, need testing