Decompose compass

WIP