Basic working version finished