practically every function in it should be its own thing.