I hate prototype inheritance