main B::constructor(1) A::companion A::companion::foo A::companion::foo B::constructor(0) B::constructor() A::Obj A::AObj::foo A::AObj::foo