add implementations for type and object virtual table