String valueVar = valuesVar + "[" + indexVar + "]";
  protected void generateImpl(PhpWriter out)    throws IOException  {    String objVar = "quercus_obj_" + out.generateId();    String objCopyVar = "quercus_copy_" + out.generateId();    String iterVar = "quercus_iter_" + out.generateId();    out.print("Value " + objVar + " = ");    _objExpr.generate(out);    out.println(";");    out.println("Value " + objCopyVar + " = " + objVar + ".copy();");    out.println("java.util.Iterator " + iterVar + " = " +		objCopyVar + ".getIndices().iterator();");    out.println("while (" + iterVar + ".hasNext()) {");    out.pushDepth();    String keyVar = "quercus_key_" + out.generateId();    String valueVar = "quercus_value_" + out.generateId();    out.println("Value " + keyVar + " = (Value) " + iterVar + ".next();");    if (_isRef)      out.println("Value " + valueVar + " = " + objVar + ".getRef(" + keyVar + ");");    else      out.println("Value " + valueVar + " = " + objCopyVar + ".get(" + keyVar + ");");    if (_key != null) {      _key.generate(out);      out.println(".set(" + keyVar + ");");    }    if (_isRef) {      _value.generateAssignRef(out, valueVar);      out.println(";");    }    else {      _value.generate(out);      out.println(".set(" + valueVar + ");");    }    _block.generate(out);        out.popDepth();    out.println("}");  }