compact earlier so that it isn't missed
fix a problem when multiple methods are defined
class variables