**WIP:** V2.0

Rewrote it to be better.
i did const and comment it.