you generally want to simply return "self" here. Was this to correct the "break" behavior? If so there is a simpler solution to that - no need to create a whole new object...