custom navigation
value passing
updates