Finally working, cleaning up