is_deeply($r->reset()->add($str)->__path, ['X', 'k+', 'l{2,4}', 'm', 'Y'], "add {$str}");
$str = 'p\\Q\\L\\Eq';
is_deeply($r->reset()->add($str)->__path, ['p', 'q'], "add {$str}");
$str = 'q\\U\\Qh{7,9}\\Ew';
is_deeply($r->reset()->add($str)->__path, ['q', 'H', '\\{', '7', ',', '9', '\\}', 'w'], "add {$str}");
$str = 'a\\Ubc\\ldef\\Eg';
is_deeply($r->reset()->add($str)->__path, ['a', 'B', 'C', 'd', 'E', 'F', 'g'], "add {$str}");
$str = 'a\\LBL+\\uxy\\QZ+';
is_deeply($r->reset()->add($str)->__path, ['a', 'b', 'l+', 'X', 'y', 'z', '\\+'], "add {$str}");
$str = '\\Q^a[b[';
is_deeply($r->reset()->add($str)->__path, ['\\^', 'a', '\\[', 'b', '\\['], "add {$str}");
//}
//{
//    my $path;
$path = [];
is_deeply($path, $rt->_path_copy($path), '_path_copy([])');
$path = ['0', 'ab cd ef'];
is_deeply($path, $rt->_path_copy($path), '_path_copy(0 ab cd ef)');
//PHPなので判別できない
//    $path = {};
//    is_deeply( $path, $rt->_node_copy($path),
//        '_node_copy({})' );
$path = ['a' => ['a bb ccc'], 'b' => ['b cc ddd']];
is_deeply($path, $rt->_node_copy($path), '_node_copy({a,b})');
$path = [['c' => ['c', 'd'], 'e' => ['e', 'f']], 't', ['d' => ['d', 'f'], 'b' => ['b', 0]], ['' => 0, 'a' => ['a']]];
is_deeply($path, $rt->_path_copy($path), '_path_copy({c,e} t {d,b} {* a}');
$path = [[0, 1, 2], ['a', 'b', 'c'], ['d', ['e' => ['e', 'f'], 'g' => ['g', 'h']]]];
is_deeply($path, $rt->_path_copy($path), '_path_copy(ab cd ef {* a})');
//}
is_deeply($rt->__path, [], 'path is empty');
$context = ['debug' => 0, 'depth' => 0];