anchor.diff:  		..()
   
   		if(!p._input)
  -			p._input = new
  -			p._input[index] = src
  -		else
  -			p._input += src
  +			p._input = list()
  +		src.index = index
  +		p._input[index] = src
   		parent = p
   
   	Del()
   		if(parent._input)
  -			parent._input -= src
  +			parent._input -= index
   			if(!parent._input.len) parent._input = null
   		..()
   
  
positive.code: 
  Input
  	var/mob/Player/parent
  
  	proc
  		Alert(Usr=parent,Message,Title,Button1="Ok",Button2,Button3)
  
negative.code: 	IsInputOpen(mob/Player/p, name)
  		if(p._input)
  			return (name in p._input)
  		return 0
  