Strucuture for rewrite. No more late night coding ._.