make more testable, test monitor