compiling now. still not even near a proper solution.