public void copyResult(Value toCopy,String calleeSig,int newArgNum,ValueBox newVB){
  hotspots.add(newVB);
  regexMap.put(newVB.getValue(),regexMap.get(toCopy));
  nonterminals.put(newVB.getValue(),nonterminals.get(toCopy));
  List<ValueBox> vbs=new LinkedList<ValueBox>();
  vbs.add(newVB);
  addSignatureToHotspotMap(calleeSig,new Hotspot(calleeSig,newArgNum,hotspots));
}

public void copyResult ( Value toCopy , String calleeSig , int newArgNum , ValueBox newVB ) { hotspots . add ( newVB ) ; regexMap . put ( newVB . getValue ( ) , regexMap . get ( toCopy ) ) ; nonterminals . put ( newVB . getValue ( ) , nonterminals . get ( toCopy ) ) ; List < ValueBox > vbs = new LinkedList < ValueBox > ( ) ; vbs . add ( newVB ) ; addSignatureToHotspotMap ( calleeSig , new Hotspot ( calleeSig , newArgNum , hotspots ) ) ; }
another pass might need to add to the results for jsastrings . this method will clone an existing result to a new value box + hotspot .
