I'm not a big fan of a method with two different types of objects, but it might make sense here