anchor.diff:  						var raw_param_split = raw_param.split(',');
   						var length_raw_param_split = raw_param_split.length;
   						var param_s = {};
  +						var resolved = {};
  +						$.extend(true, resolved, param_map, parent_param_s);
   						for(var p=0; p<length_raw_param_split; ++p){
  -							var var_val = raw_param_split[p].split('=');
  -							var val = null;
  -							var var_idx = null;
  -							if(var_val.length !== 1){
  -								if(var_val.length === 2){
  -									if(param_map.hasOwnProperty(var_val[0])){
  -										throw new Error('Error var dupe : '+input_tag);
  -									}
  -								}else{
  -									throw new TypeError(var_val);
  -								}
  -							}
  -							var_idx = var_val.length - 1;
  -							val = var_val[var_idx];
  -							var param_key = var_val[0];
  -							if(var_idx > 0){// この関数で=を用いて変数に値を設定している場合
  -								param_map[param_key] = parent_param_s.hasOwnProperty(val) ? parent_param_s[val] : val;
  -							}
  -							val = param_map.hasOwnProperty(var_val[0]) ? param_map[var_val[0]] : parent_param_s.hasOwnProperty(param_key) ? parent_param_s[param_key] : val;
  -							param_s["$"+Object.keys(param_s).length] = val;
  +							var val_param_extract = reverse_porlish_notation_logic(raw_param_split[p], resolved,{});
  +//console.log('val_param_extract : '+JSON.stringify(val_param_extract));
  +							$.extend(resolved,val_param_extract[2]);
  +//TODO mod same param_map 
  +							param_s["$"+Object.keys(param_s).length] = val_param_extract[0];
   						}
   					}else{
   						input_tag = _input_tag;
   						param_s = {};
  -					}
  -
  -					//resolving param_s by param_map
  -					if($.isPlainObject(param_s)){
  -						var tmp_param_s = {};
  -						$.each(Object.keys(param_s),function(idx, key){
  -							try{
  -								param_s[key] = reverse_porlish_notation(param_s[key], param_map, tmp_param_s);//逆ポーランド記法のSyntaxチェック
  -							}catch(e){
  -								console.log('re porlisth error : '+e);
  -							}
  -						});
   					}
   //console.log('extract_param_from : ' + _input_tag + ' : ' + JSON.stringify([input_tag,param_s]));
   					return [input_tag,param_s];
  
positive.code: 				var IDX_MULTI = OPERATOR_CHAR_S.indexOf('*');
  				var IDX_PAREN = OPERATOR_CHAR_S.indexOf('(');
  				var IDX_EQUAL = OPERATOR_CHAR_S.indexOf('=');
  				function reverse_porlish_notation(formula, _param_s, _tmp_param_s){
  					var param_s = if_nullOrUndef_then_return_init(_param_s, {});
  					var tmp_param_s = if_nullOrUndef_then_return_init(_tmp_param_s, {});
  //console.log('formula : '+formula);
  					var _formula = formula;
  					var _parent_counter = 0;
  					if($.isArray(_formula)){
  						_formula = _formula.join(' ');
  					}
  					if(typeof _formula === 'string'){
  						_formula = formula.replace(/\s+/g,' ').trim();
  					}
  					var operator_s =[ //null
  						,function(a0, a1){
  							if($.isNumeric(a0) && $.isNumeric(a1)){
  								return a0 + a1;
  							}else{
  								throw new TypeError(a0 + ' : ' + a1 + ' are not resolved ');
  							}
  						}
  						,function(a0, a1){return a1 - a0;}
  						,function(a0, a1){return a1 * a0;}
  						,function(a0, a1){return a1 / a0;}
  						,function(a0, a1){return a1 % a0;}
  					];
  					if(_formula != null && typeof _formula !== 'undefined'){
  						var stack = [];
  						var pool = '';
  						var num = 0;
  						var length_formula = _formula.length;
  						for(var i=0; i<length_formula; ++i){
  							var c = _formula.charAt(i);
  							var op_idx = OPERATOR_CHAR_S.indexOf(c);
  							if (op_idx === 0) {
  								if(pool !== ''){
  									var pool = param_s.hasOwnProperty(pool) ? param_s[pool] : pool;
  									if(pool === '+' || pool === '-'){//(+3 -1 +)への対応
  										stack.push(operator_s[OPERATOR_CHAR_S.indexOf(pool)] (stack.pop(), stack.pop()));
  									}else if( ! $.isNumeric(pool) ){
  										stack.push(pool);
  										pool = '';
  									}else{
  
negative.code: 				console.log(split_ignore_nest('table>thead_th($col=$0)+tbody_th_td(($col -1 +),$row=$1)','+',[["(",")"]]));
  				console.log(split_ignore_nest('Hello(world,!!)',',',[["(",")"]]));
  				console.log(split_ignore_nest('true','',[]));
  				console.log(reverse_porlish_notation_logic("$0",{"$0":3,"$1":6,"$2":2},{}));
  
  			});
  		</script>
  