anchor.diff:  		return 1
   
   	for(var/obj/item/I in view(1,src))
  -		for(var/path in desired_items)
  -			//Make sure it's the proper item and we're not holding it
  -			if(istype(I, path) && I.loc != src)
  -
  -				//If we have a perch and the item is sitting on it, continue
  -				if(!client && parrot_perch && I.loc == parrot_perch)
  -					continue
  -
  -				held_item = I
  -				I.loc = src
  -				visible_message("[src] grabs the [held_item]!", "\blue You grab the [held_item]!", "You hear the sounds of wings flapping furiously.")
  -				return held_item
  +		//Make sure we're not already holding it and it's small enough
  +		if(I.loc != src && I.w_class <= 2)
  +
  +			//If we have a perch and the item is sitting on it, continue
  +			if(!client && parrot_perch && I.loc == parrot_perch)
  +				continue
  +
  +			held_item = I
  +			I.loc = src
  +			visible_message("[src] grabs the [held_item]!", "\blue You grab the [held_item]!", "You hear the sounds of wings flapping furiously.")
  +			return held_item
   
   	src << "\red There is nothing of interest to take."
   	return 0
  
positive.code: 	var/obj/item/stolen_item = null
  
  	for(var/mob/living/carbon/C in view(1,src))
  		for(var/path in desired_items)
  			if(istype(C.l_hand, path))
  				stolen_item = C.l_hand
  
  			if(istype(C.r_hand, path))
  				stolen_item = C.r_hand
  
  			if(stolen_item)
  				C.u_equip(stolen_item)
  				held_item = stolen_item
  				stolen_item.loc = src
  				visible_message("[src] grabs the [held_item] out of [C]'s hand!", "\blue You snag the [held_item] out of [C]'s hand!", "You hear the sounds of wings flapping furiously.")
  				return held_item
  
  	src << "\red There is nothing of interest to take."
  	return 0
  
negative.code: 									/obj/machinery/suit_storage_unit,	/obj/machinery/telecomms, \
  									/obj/machinery/teleport)
  
  	//Parrots are kleptomaniacs. This variable ... stores the item a parrot is holding.
  	var/obj/item/held_item = null
  
  
  /mob/living/simple_animal/parrot/New()
  	..()
  	if(!ears)
  		var/headset = pick(/obj/item/device/radio/headset/headset_sec, \
  						/obj/item/device/radio/headset/headset_eng, \
  						/obj/item/device/radio/headset/headset_med, \
  						/obj/item/device/radio/headset/headset_sci, \
  						/obj/item/device/radio/headset/heads/qm)
  		ears = new headset(src)
  
  	parrot_sleep_dur = parrot_sleep_max //In case someone decides to change the max without changing the duration var
  
  	verbs.Add(/mob/living/simple_animal/parrot/proc/steal_from_ground, \
  			  /mob/living/simple_animal/parrot/proc/steal_from_mob, \
  			  /mob/living/simple_animal/parrot/verb/drop_held_item_player, \
  			  /mob/living/simple_animal/parrot/proc/perch_player)
  
  
  /mob/living/simple_animal/parrot/Die()
  	if(held_item)
  