90% of functions written but 0 testing, compiles though so we're chill