re-structure
conflicts merged