i am planning on a restructuring, come back later :>