refactored FakeBus