refactor Prop, one prop needn't know its owner.