main class (WIP)