code: protected String serializeElementToString(){
  		StringBuilder buf=new StringBuilder();
  		buf.append("[");
  		LazyNode pointer=root.child;
  		boolean first=true;
  		while(pointer!=null){
  			if(first){
  				first=false;
  			}else{
  				buf.append(",");
  			}
  			if(pointer.type==LazyNode.OBJECT){
  				buf.append(new LazyObject(pointer).toString());
  			}else if(pointer.type==LazyNode.ARRAY){
  				buf.append(new LazyArray(pointer).toString());
  			}else if(pointer.type==LazyNode.VALUE_STRING){
  				buf.append("\"");
  				buf.append(pointer.getStringValue());
  				buf.append("\"");
  			}else if (pointer.type==LazyNode.VALUE_ESTRING){
  				buf.append("\"");
  				buf.append(pointer.getRawStringValue());
  				buf.append("\"");
  			}else if(pointer.type==LazyNode.VALUE_TRUE){
  				buf.append("true");
  			}else if(pointer.type==LazyNode.VALUE_FALSE){
  				buf.append("false");
  			}else if(pointer.type==LazyNode.VALUE_NULL){
  				buf.append("null");
  			}else{
  				buf.append(pointer.getStringValue());
  			}
  			pointer=pointer.next;
  		}
  		buf.append("]");
  		return buf.toString();
  	}
docs: /*
  protected LazyArray(LazyNode root,char[] source){
  super(root,source,null);
  }