I like what you did with this interface