anchor.diff:  		COMSIG_ATOM_TOOL_ACT(TOOL_SCREWDRIVER),
   		COMSIG_ATOM_TOOL_ACT(TOOL_MULTITOOL),
   		COMSIG_OBJ_DECONSTRUCT,
  -		COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCH,
  +		COMSIG_MOVABLE_SET_ANCHORED,
   		COMSIG_PARENT_EXAMINE,
   		COMSIG_ATOM_ATTACK_GHOST,
   		COMSIG_ATOM_USB_CABLE_TRY_ATTACH,
  
positive.code: 	examine_text += span_notice("The cover panel to the integrated circuit is [locked? "locked" : "unlocked"].")
  	var/obj/item/stock_parts/cell/cell = attached_circuit.cell
  	examine_text += span_notice("The charge meter reads [cell ? round(cell.percent(), 1) : 0]%.")
  
  	if (shell_flags & SHELL_FLAG_USB_PORT)
  		examine_text += span_notice("There is a <b>USB port</b> on the front.")
  
  /**
   * Called when the shell is wrenched.
   *
   * Only applies if the shell has SHELL_FLAG_REQUIRE_ANCHOR.
   * Disables the integrated circuit if unanchored, otherwise enable the circuit.
   */
  /datum/component/shell/proc/on_unfasten(atom/source, anchored)
  	SIGNAL_HANDLER
  	attached_circuit?.on = anchored
  /**
   * Called when an item hits the parent. This is the method to add the circuitboard to the component.
   */
  
negative.code: 	attached_circuit.locked = FALSE
  
  	if(shell_flags & SHELL_FLAG_REQUIRE_ANCHOR)
  		attached_circuit.on = parent_atom.anchored
  
  	if(circuitboard.loc != parent_atom)
  		circuitboard.forceMove(parent_atom)
  