function PlacemarkHelper(placeMark, curDepth){
        if(curDepth == null || isNaN(curDepth)){
          	curDepth = 1 ;
      	} else if (++curDepth == 10){ // just to be safe do not recurse more than 10 times
          	return ;
       	}

        for (var attr in placeMark){
            if ((typeof(placeMark[attr]) != 'object') || (placeMark[attr] instanceof Array))
            {
                this[attr] = placeMark[attr] ;
            } else {  // recurse thru sub-objects
                PlacemarkHelper.call(this, placeMark[attr], curDepth) ;
            }
        }

}
