Rewritten code and new repo :D