anchor.diff:  
   	if(equipped)
   		W.layer = 20
  +		if(src.back && W.loc != src.back)
  +			W.loc = src
   	else
   		if (del_on_fail)
   			del(W)
  
positive.code: 				src.w_uniform = W
  				equipped = 1
  		if(slot_l_store)
  			if(!src.l_store)
  				src.l_store = W
  				equipped = 1
  		if(slot_r_store)
  			if(!src.r_store)
  				src.r_store = W
  				equipped = 1
  		if(slot_s_store)
  			if(!src.s_store)
  				src.s_store = W
  				equipped = 1
  		if(slot_in_backpack)
  
negative.code: 				update_clothing()
  				return
  
  /mob/living/carbon/human/proc/equip_if_possible(obj/item/W, slot, del_on_fail = 1) // since byond doesn't seem to have pointers, this seems like the best way to do this :/
  	//warning: icky code
  	var/equipped = 0
  	switch(slot)
  		if(slot_back)
  			if(!src.back)
  