Fully working, time for some bug hunting