Also, is silently returning the right thing to do here? Makes it hard to figure out what the problem is if the caller is doing something wrong. Is there a way to communicate an error message back?