anchor.diff:  
   %% -------------------------------------------------------------------
   
  -set_target_angular_velocity(EntityState, {TPitch, TRoll, TYaw}) ->
  -	?info("Setting orientation velocity to ~p.", [{TPitch, TRoll, TYaw}]),
  +set_target_angular_velocity(EntityState, New) ->
  +	?info("Setting orientation velocity to ~p.", [New]),
   	#entity{
   		behavior_data = #ship_data{
  -			target_angular_velocity = {Pitch, Roll, Yaw}
  +			target_angular_velocity = Current
   		} = ShipData
   	} = EntityState,
   
  -	NewTPitch = first_defined(TPitch, Pitch),
  -	NewTRoll = first_defined(TRoll, Roll),
  -	NewTYaw = first_defined(TYaw, Yaw),
  -
   	EntityState1 = EntityState#entity{
   		behavior_data = ShipData#ship_data{
  -			target_angular_velocity = {NewTPitch, NewTRoll, NewTYaw}
  +			target_angular_velocity = update_vector(New, Current)
   		}
   	},
   	Response = {reply, {struct, [
  
positive.code: 	% Current state
  	target_linear_velocity = {0, 0, 0} :: vector:vec(),
  	target_angular_velocity = {0, 0, 0} :: vector:vec(),
  		
  	% Intrinsic ship parameters
  	linear_target_velocity_scaling = {600, 800, 500} :: vector:vec(), % {sideslip, throttle, lift}
  	angular_target_velocity_scaling = {2, 2, 2} :: vector:vec(), %  {pitch, roll, yaw}
  
negative.code: 
  %% -------------------------------------------------------------------
  
  update_vector({UpdateX, UpdateY, UpdateZ}, {CurrentX, CurrentY, CurrentZ}) ->
  	{
  		first_defined(UpdateX, CurrentX),
  		first_defined(UpdateY, CurrentY),
  		first_defined(UpdateZ, CurrentZ)
  		}.
  
  %% -------------------------------------------------------------------
  
  first_defined(undefined, R1) ->
  	R1;
  
  