implemented Nathan's interface`