Early version with back broken

It works! Just need to improve and refine the code now.