just set the default argument, a nil parent should be an error