everything works... going to clean up a bit now