implement next( )