Calling this in the constructor seems like it'd be really expensive.  Is it necessary?