Rename parent -> _parent
Rename receive() - > observe()