anchor.diff:              else
                   return AdaptiveFunc.Identity
           }  
  +
       /// <summary> Gives a camera an option to move towards or away from the facing direction.
       /// right mouse button with mouse y axis movement controls the functionality.</summary>
       /// <param name="mouse"> the mouse inputs (this is often pulled from the parent window)</param>
  
positive.code:             else
                  return AdaptiveFunc.Identity
          }
      /// <summary> Gives a camera the ability to reset to it's initial state.
      /// F9 is the default button for resetting.</summary>
      /// <param name="keyboard"> the keyboard inputs (this is often pulled from the parent window)</param>
      /// <returns>An incremental function that takes a CameraView</returns>    
      let controlReset (initial : CameraView) (k : IKeyboard) =
          adaptive {
              let! t = k.IsDown Keys.F9
              if t then
                  return Mod.constant 0 |> Mod.step (fun _ _ _ -> initial )
              else
  
negative.code:             else
                  return AdaptiveFunc.Identity
          } |> Mod.onPush
  
      /// <summary> Gives a camera an option to move around laterally from
      /// the direction of the camera.
      /// A middle mouse button controls the functionality.</summary>
  