syncing, in process of refactoring how component requirements and inheritance is declared
fixed bad reference in canvas2d