a few compilation errors and stuff