This needs a comment explaining what the interface/method are for.