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: 
  %% -------------------------------------------------------------------
  
  first_defined(undefined, R1) ->
  	R1;
  
  
negative.code: 
  %% -------------------------------------------------------------------
  
  set_target_linear_velocity(EntityState, New) ->
  	?info("Setting position velocity to ~p.", [New]),
  	#entity{
  		behavior_data = #ship_data{
  			target_linear_velocity = Current
  		} = ShipData
  	} = EntityState,
  
  	EntityState1 = EntityState#entity{
  		behavior_data = ShipData#ship_data{
  			target_linear_velocity = update_vector(New, Current)
  		}
  	},
  	Response = {reply, {struct, [
  