implements interface with method