论坛
BBS
空间测绘
发表
发布文章
提问答疑
搜索
您还未登录
登录后即可体验更多功能
立即登录
我的收藏
提问答疑
我要投稿
IOT
[27523] 2020-05-25_空指针5月内部赛-disable_matryoshka-官方WP
文档创建者:
s7ckTeam
浏览次数:
1
最后更新:
2025-01-19
IOT
1 人阅读
|
0 人回复
s7ckTeam
s7ckTeam
当前离线
积分
-56
6万
主题
-6万
回帖
-56
积分
管理员
积分
-56
发消息
2020-05-25_空指针5月内部赛-disable_matryoshka-官方WP
空
指
针
5
月
内
部
赛
-
d
i
s
a
b
l
e
_
m
a
t
r
y
o
s
h
k
a
-
官
方
W
P
原
创
N
u
1
L
T
e
a
m
N
u
1
L
T
e
a
m
2
0
2
0
-
0
5
-
2
5
d
i
s
a
b
l
e
_
m
a
t
r
y
o
s
h
k
a
禁
止
套
娃
禁
止
套
娃
W
r
i
t
e
u
p
首
先
注
册
登
陆
一
把
梭
,
登
陆
后
查
看
功
能
,
大
致
可
以
判
断
是
一
个
分
享
网
页
、
文
件
、
思
路
的
私
密
文
件
系
统
,
可
以
通
过
分
享
链
接
给
其
他
人
来
获
取
对
应
的
文
件
或
者
思
路
。
同
时
不
难
发
现
在
页
面
源
码
中
存
在
一
段
报
错
的
s
c
r
i
p
t
<
s
c
r
i
p
t
s
r
c
=
"
h
t
t
p
:
/
/
l
o
c
a
l
h
o
s
t
/
a
p
p
.
j
s
"
>
<
/
s
c
r
i
p
t
>
那
么
基
本
上
就
可
以
从
几
个
角
度
来
分
析
是
否
存
在
漏
洞
网
页
保
存
分
享
的
功
能
网
页
保
存
分
享
的
功
能
可
能
存
在
S
S
R
F
或
者
直
接
保
存
网
页
导
致
X
S
S
但
是
通
过
测
试
后
发
现
网
页
复
制
是
经
过
h
t
m
l
s
p
e
c
i
a
l
c
h
a
r
s
函
数
处
理
的
,
同
时
内
网
I
P
或
者
指
向
内
网
的
域
名
会
被
禁
止
。
那
么
基
本
上
不
存
在
漏
洞
文
件
云
盘
功
能
文
件
云
盘
功
能
这
个
功
能
由
于
是
通
过
c
o
d
e
来
存
取
的
因
此
不
可
能
存
在
任
意
文
件
下
载
或
者
任
意
文
件
上
传
思
路
分
享
功
能
思
路
分
享
功
能
这
个
功
能
类
似
留
言
板
,
很
容
易
就
能
发
现
这
个
功
能
在
处
理
具
体
的
文
本
的
时
候
不
会
对
文
本
进
行
过
滤
,
导
致
存
在
X
S
S
,
但
是
在
查
看
我
们
写
入
的
p
a
y
l
o
a
d
后
,
发
现
查
看
具
体
p
a
y
l
o
a
d
的
页
面
存
在
C
S
P
,
导
致
X
S
S
存
在
利
用
难
点
。
查
看
具
体
的
C
S
P
发
现
规
则
如
下
:
C
o
n
t
e
n
t
-
S
e
c
u
r
i
t
y
-
P
o
l
i
c
y
:
d
e
f
a
u
l
t
-
s
r
c
'
n
o
n
e
'
;
s
t
y
l
e
-
s
r
c
h
t
t
p
s
:
/
/
c
d
n
j
s
.
c
l
o
u
d
f
l
a
r
e
.
c
o
m
h
t
t
p
s
:
/
/
s
t
a
t
i
c
.
p
i
n
g
e
n
d
o
.
c
o
m
;
s
c
r
i
p
t
-
s
r
c
'
s
e
l
f
'
h
t
t
p
s
:
/
/
c
o
d
e
.
j
q
u
e
r
y
.
c
o
m
h
t
t
p
s
:
/
/
c
d
n
j
s
.
c
l
o
u
d
f
l
a
r
e
.
c
o
m
h
t
t
p
s
:
/
/
s
t
a
c
k
p
a
t
h
.
b
o
o
t
s
t
r
a
p
c
d
n
.
c
o
m
;
c
o
n
n
e
c
t
-
s
r
c
'
s
e
l
f
'
h
t
t
p
:
/
/
l
o
c
a
l
h
o
s
t
:
*
;
i
m
g
-
s
r
c
d
a
t
a
:
;
f
o
n
t
-
s
r
c
h
t
t
p
s
:
/
/
c
d
n
j
s
.
c
l
o
u
d
f
l
a
r
e
.
c
o
m
h
t
t
p
s
:
/
/
c
d
n
j
s
.
c
l
o
u
d
f
l
a
r
e
.
c
o
m
;
为
了
方
便
看
,
我
们
简
化
一
下
C
S
P
规
则
:
C
o
n
t
e
n
t
-
S
e
c
u
r
i
t
y
-
P
o
l
i
c
y
:
d
e
f
a
u
l
t
-
s
r
c
'
n
o
n
e
'
;
s
t
y
l
e
-
s
r
c
;
s
c
r
i
p
t
-
s
r
c
'
s
e
l
f
'
;
c
o
n
n
e
c
t
-
s
r
c
'
s
e
l
f
'
h
t
t
p
:
/
/
l
o
c
a
l
h
o
s
t
:
*
;
i
m
g
-
s
r
c
d
a
t
a
:
;
这
里
存
在
可
疑
点
,
发
现
c
o
n
n
e
c
t
-
s
r
c
属
性
允
许
了
h
t
t
p
:
/
/
l
o
c
a
l
h
o
s
t
:
*
结
合
上
面
发
现
的
无
法
执
行
的
s
c
r
i
p
t
标
签
,
可
以
大
致
猜
测
将
开
发
环
境
直
接
上
线
成
生
产
环
境
了
报
告
报
告
B
U
G
功
能
功
能
这
个
功
能
疯
狂
暗
示
这
是
一
个
X
S
S
题
,
几
个
功
能
看
似
没
有
关
联
,
但
是
我
们
可
以
将
所
有
功
能
串
联
起
来
完
成
我
们
的
X
S
S
。
整
体
思
路
串
联
整
体
思
路
串
联
由
于
C
S
P
中
的
影
响
,
我
们
没
发
直
接
通
过
u
n
s
a
f
e
-
i
n
l
i
n
e
的
方
式
来
X
S
S
,
但
是
我
们
有
一
个
文
件
上
传
下
载
的
功
能
,
可
以
通
过
此
功
能
来
引
入
我
们
的
j
a
v
a
s
c
r
i
p
t
脚
本
。
同
时
由
于
C
S
P
中
c
o
n
n
e
c
t
-
s
r
c
的
影
响
,
我
们
没
发
直
接
外
带
数
据
,
因
此
可
以
通
过
利
用
我
们
的
网
页
源
码
爬
取
功
能
的
接
口
去
外
带
数
据
。
那
么
X
S
S
的
思
路
已
经
清
晰
了
。
s
c
r
i
p
t
-
s
r
c
:
s
e
l
f
c
o
n
n
e
c
t
-
s
r
c
:
s
e
l
f
h
t
t
p
:
/
/
l
o
c
a
l
h
o
s
t
:
*
第
一
个
探
测
P
O
C
如
下
:
(
f
u
n
c
t
i
o
n
(
w
i
n
d
o
w
,
u
n
d
e
f
i
n
e
d
)
{
f
u
n
c
t
i
o
n
a
j
a
x
(
o
p
t
i
o
n
s
)
{
/
/
编
码
数
据
f
u
n
c
t
i
o
n
s
e
t
D
a
t
a
(
)
{
/
/
设
置
对
象
的
遍
码
f
u
n
c
t
i
o
n
s
e
t
O
b
j
D
a
t
a
(
d
a
t
a
,
p
a
r
e
n
t
N
a
m
e
)
{
f
u
n
c
t
i
o
n
e
n
c
o
d
e
D
a
t
a
(
n
a
m
e
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
{
v
a
r
i
t
e
m
s
=
[
]
;
n
a
m
e
=
p
a
r
e
n
t
N
a
m
e
=
=
=
u
n
d
e
f
i
n
e
d
?
n
a
m
e
:
p
a
r
e
n
t
N
a
m
e
+
"
[
"
+
n
a
m
e
+
"
]
"
;
i
f
(
t
y
p
e
o
f
v
a
l
u
e
=
=
=
"
o
b
j
e
c
t
"
&
&
v
a
l
u
e
!
=
=
n
u
l
l
)
{
i
t
e
m
s
=
i
t
e
m
s
.
c
o
n
c
a
t
(
s
e
t
O
b
j
D
a
t
a
(
v
a
l
u
e
,
n
a
m
e
)
)
;
}
e
l
s
e
{
n
a
m
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
n
a
m
e
)
;
v
a
l
u
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
v
a
l
u
e
)
;
i
t
e
m
s
.
p
u
s
h
(
n
a
m
e
+
"
=
"
+
v
a
l
u
e
)
;
}
r
e
t
u
r
n
i
t
e
m
s
;
}
v
a
r
a
r
r
=
[
]
,
v
a
l
u
e
;
i
f
(
O
b
j
e
c
t
.
p
r
o
t
o
t
y
p
e
.
t
o
S
t
r
i
n
g
.
c
a
l
l
(
d
a
t
a
)
=
=
'
[
o
b
j
e
c
t
A
r
r
a
y
]
'
)
{
f
o
r
(
v
a
r
i
=
0
,
l
e
n
=
d
a
t
a
.
l
e
n
g
t
h
;
i
<
l
e
n
;
i
+
+
)
{
v
a
l
u
e
=
d
a
t
a
[
i
]
;
a
r
r
=
a
r
r
.
c
o
n
c
a
t
(
e
n
c
o
d
e
D
a
t
a
(
t
y
p
e
o
f
v
a
l
u
e
=
=
"
o
b
j
e
c
t
"
?
i
:
"
"
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
)
;
}
}
e
l
s
e
i
f
(
O
b
j
e
c
t
.
p
r
o
t
o
t
y
p
e
.
t
o
S
t
r
i
n
g
.
c
a
l
l
(
d
a
t
a
)
=
=
'
[
o
b
j
e
c
t
O
b
j
e
c
t
]
'
)
{
f
o
r
(
v
a
r
k
e
y
i
n
d
a
t
a
)
{
v
a
l
u
e
=
d
a
t
a
[
k
e
y
]
;
a
r
r
=
a
r
r
.
c
o
n
c
a
t
(
e
n
c
o
d
e
D
a
t
a
(
k
e
y
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
)
;
}
}
r
e
t
u
r
n
a
r
r
;
}
;
/
/
设
置
字
符
串
的
遍
码
,
字
符
串
的
格
式
为
:
a
=
1
&
b
=
2
;
f
u
n
c
t
i
o
n
s
e
t
S
t
r
D
a
t
a
(
d
a
t
a
)
{
v
a
r
a
r
r
=
d
a
t
a
.
s
p
l
i
t
(
"
&
"
)
;
f
o
r
(
v
a
r
i
=
0
,
l
e
n
=
a
r
r
.
l
e
n
g
t
h
;
i
<
l
e
n
;
i
+
+
)
{
n
a
m
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
a
r
r
[
i
]
.
s
p
l
i
t
(
"
=
"
)
[
0
]
)
;
v
a
l
u
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
a
r
r
[
i
]
.
s
p
l
i
t
(
"
=
"
)
[
1
]
)
;
a
r
r
[
i
]
=
n
a
m
e
+
"
=
"
+
v
a
l
u
e
;
}
r
e
t
u
r
n
a
r
r
;
}
i
f
(
d
a
t
a
)
{
i
f
(
t
y
p
e
o
f
d
a
t
a
=
=
=
"
s
t
r
i
n
g
"
)
{
d
a
t
a
=
s
e
t
S
t
r
D
a
t
a
(
d
a
t
a
)
;
}
e
l
s
e
i
f
(
t
y
p
e
o
f
d
a
t
a
=
=
=
"
o
b
j
e
c
t
"
)
{
d
a
t
a
=
s
e
t
O
b
j
D
a
t
a
(
d
a
t
a
)
;
}
d
a
t
a
=
d
a
t
a
.
j
o
i
n
(
"
&
"
)
.
r
e
p
l
a
c
e
(
"
/
%
2
0
/
g
"
,
"
+
"
)
;
/
/
若
是
使
用
g
e
t
方
法
或
J
S
O
N
P
,
则
手
动
添
加
到
U
R
L
中
i
f
(
t
y
p
e
=
=
=
"
g
e
t
"
|
|
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
u
r
l
+
=
u
r
l
.
i
n
d
e
x
O
f
(
"
?
"
)
>
-
1
?
(
u
r
l
.
i
n
d
e
x
O
f
(
"
=
"
)
>
-
1
?
"
&
"
+
d
a
t
a
:
d
a
t
a
)
:
"
?
"
+
d
a
t
a
;
}
}
}
/
/
J
S
O
N
P
f
u
n
c
t
i
o
n
c
r
e
a
t
e
J
s
o
n
p
(
)
{
v
a
r
s
c
r
i
p
t
=
d
o
c
u
m
e
n
t
.
c
r
e
a
t
e
E
l
e
m
e
n
t
(
"
s
c
r
i
p
t
"
)
,
t
i
m
e
N
a
m
e
=
n
e
w
D
a
t
e
(
)
.
g
e
t
T
i
m
e
(
)
+
M
a
t
h
.
r
o
u
n
d
(
M
a
t
h
.
r
a
n
d
o
m
(
)
*
1
0
0
0
)
,
c
a
l
l
b
a
c
k
=
"
J
S
O
N
P
_
"
+
t
i
m
e
N
a
m
e
;
w
i
n
d
o
w
[
c
a
l
l
b
a
c
k
]
=
f
u
n
c
t
i
o
n
(
d
a
t
a
)
{
c
l
e
a
r
T
i
m
e
o
u
t
(
t
i
m
e
o
u
t
_
f
l
a
g
)
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
r
e
m
o
v
e
C
h
i
l
d
(
s
c
r
i
p
t
)
;
s
u
c
c
e
s
s
(
d
a
t
a
)
;
}
s
c
r
i
p
t
.
s
r
c
=
u
r
l
+
(
u
r
l
.
i
n
d
e
x
O
f
(
"
?
"
)
>
-
1
?
"
&
"
:
"
?
"
)
+
"
c
a
l
l
b
a
c
k
=
"
+
c
a
l
l
b
a
c
k
;
s
c
r
i
p
t
.
t
y
p
e
=
"
t
e
x
t
/
j
a
v
a
s
c
r
i
p
t
"
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
a
p
p
e
n
d
C
h
i
l
d
(
s
c
r
i
p
t
)
;
s
e
t
T
i
m
e
(
c
a
l
l
b
a
c
k
,
s
c
r
i
p
t
)
;
}
/
/
设
置
请
求
超
时
f
u
n
c
t
i
o
n
s
e
t
T
i
m
e
(
c
a
l
l
b
a
c
k
,
s
c
r
i
p
t
)
{
i
f
(
t
i
m
e
O
u
t
!
=
=
u
n
d
e
f
i
n
e
d
)
{
t
i
m
e
o
u
t
_
f
l
a
g
=
s
e
t
T
i
m
e
o
u
t
(
f
u
n
c
t
i
o
n
(
)
{
i
f
(
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
d
e
l
e
t
e
w
i
n
d
o
w
[
c
a
l
l
b
a
c
k
]
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
r
e
m
o
v
e
C
h
i
l
d
(
s
c
r
i
p
t
)
;
}
e
l
s
e
{
t
i
m
e
o
u
t
_
b
o
o
l
=
t
r
u
e
;
x
h
r
&
&
x
h
r
.
a
b
o
r
t
(
)
;
}
c
o
n
s
o
l
e
.
l
o
g
(
"
t
i
m
e
o
u
t
"
)
;
}
,
t
i
m
e
O
u
t
)
;
}
}
/
/
X
H
R
f
u
n
c
t
i
o
n
c
r
e
a
t
e
X
H
R
(
)
{
/
/
由
于
I
E
6
的
X
M
L
H
t
t
p
R
e
q
u
e
s
t
对
象
是
通
过
M
S
X
M
L
库
中
的
一
个
A
c
t
i
v
e
X
对
象
实
现
的
。
/
/
所
以
创
建
X
H
R
对
象
,
需
要
在
这
里
做
兼
容
处
理
。
f
u
n
c
t
i
o
n
g
e
t
X
H
R
(
)
{
i
f
(
w
i
n
d
o
w
.
X
M
L
H
t
t
p
R
e
q
u
e
s
t
)
{
r
e
t
u
r
n
n
e
w
X
M
L
H
t
t
p
R
e
q
u
e
s
t
(
)
;
}
e
l
s
e
{
/
/
遍
历
I
E
中
不
同
版
本
的
A
c
t
i
v
e
X
对
象
v
a
r
v
e
r
s
i
o
n
s
=
[
"
M
i
c
r
o
s
o
f
t
"
,
"
m
s
x
m
3
"
,
"
m
s
x
m
l
2
"
,
"
m
s
x
m
l
1
"
]
;
f
o
r
(
v
a
r
i
=
0
;
i
<
v
e
r
s
i
o
n
s
.
l
e
n
g
t
h
;
i
+
+
)
{
t
r
y
{
v
a
r
v
e
r
s
i
o
n
=
v
e
r
s
i
o
n
s
[
i
]
+
"
.
X
M
L
H
T
T
P
"
;
r
e
t
u
r
n
n
e
w
A
c
t
i
v
e
X
O
b
j
e
c
t
(
v
e
r
s
i
o
n
)
;
}
c
a
t
c
h
(
e
)
{
}
}
}
}
/
/
创
建
对
象
。
x
h
r
=
g
e
t
X
H
R
(
)
;
x
h
r
.
o
p
e
n
(
t
y
p
e
,
u
r
l
,
a
s
y
n
c
)
;
/
/
设
置
请
求
头
i
f
(
t
y
p
e
=
=
=
"
p
o
s
t
"
&
&
!
c
o
n
t
e
n
t
T
y
p
e
)
{
/
/
若
是
p
o
s
t
提
交
,
则
设
置
c
o
n
t
e
n
t
-
T
y
p
e
为
a
p
p
l
i
c
a
t
i
o
n
/
x
-
w
w
w
-
f
o
u
r
-
u
r
l
e
n
c
o
d
e
d
x
h
r
.
s
e
t
R
e
q
u
e
s
t
H
e
a
d
e
r
(
"
C
o
n
t
e
n
t
-
T
y
p
e
"
,
"
a
p
p
l
i
c
a
t
i
o
n
/
x
-
w
w
w
-
f
o
r
m
-
u
r
l
e
n
c
o
d
e
d
;
c
h
a
r
s
e
t
=
U
T
F
-
8
"
)
;
}
e
l
s
e
i
f
(
c
o
n
t
e
n
t
T
y
p
e
)
{
x
h
r
.
s
e
t
R
e
q
u
e
s
t
H
e
a
d
e
r
(
"
C
o
n
t
e
n
t
-
T
y
p
e
"
,
c
o
n
t
e
n
t
T
y
p
e
)
;
}
/
/
添
加
监
听
x
h
r
.
o
n
r
e
a
d
y
s
t
a
t
e
c
h
a
n
g
e
=
f
u
n
c
t
i
o
n
(
)
{
i
f
(
x
h
r
.
r
e
a
d
y
S
t
a
t
e
=
=
=
4
)
{
i
f
(
t
i
m
e
O
u
t
!
=
=
u
n
d
e
f
i
n
e
d
)
{
/
/
由
于
执
行
a
b
o
r
t
(
)
方
法
后
,
有
可
能
触
发
o
n
r
e
a
d
y
s
t
a
t
e
c
h
a
n
g
e
事
件
,
/
/
所
以
设
置
一
个
t
i
m
e
o
u
t
_
b
o
o
l
标
识
,
来
忽
略
中
止
触
发
的
事
件
。
i
f
(
t
i
m
e
o
u
t
_
b
o
o
l
)
{
r
e
t
u
r
n
;
}
c
l
e
a
r
T
i
m
e
o
u
t
(
t
i
m
e
o
u
t
_
f
l
a
g
)
;
}
i
f
(
(
x
h
r
.
s
t
a
t
u
s
>
=
2
0
0
&
&
x
h
r
.
s
t
a
t
u
s
<
3
0
0
)
|
|
x
h
r
.
s
t
a
t
u
s
=
=
3
0
4
)
{
s
u
c
c
e
s
s
(
x
h
r
.
r
e
s
p
o
n
s
e
T
e
x
t
)
;
}
e
l
s
e
{
e
r
r
o
r
(
x
h
r
.
s
t
a
t
u
s
,
x
h
r
.
s
t
a
t
u
s
T
e
x
t
)
;
}
}
}
;
/
/
发
送
请
求
x
h
r
.
s
e
n
d
(
t
y
p
e
=
=
=
"
g
e
t
"
?
n
u
l
l
:
d
a
t
a
)
;
s
e
t
T
i
m
e
(
)
;
/
/
请
求
超
时
}
v
a
r
u
r
l
=
o
p
t
i
o
n
s
.
u
r
l
|
|
"
"
,
/
/
请
求
的
链
接
t
y
p
e
=
(
o
p
t
i
o
n
s
.
t
y
p
e
|
|
"
g
e
t
"
)
.
t
o
L
o
w
e
r
C
a
s
e
(
)
,
/
/
请
求
的
方
法
,
默
认
为
g
e
t
d
a
t
a
=
o
p
t
i
o
n
s
.
d
a
t
a
|
|
n
u
l
l
,
/
/
请
求
的
数
据
c
o
n
t
e
n
t
T
y
p
e
=
o
p
t
i
o
n
s
.
c
o
n
t
e
n
t
T
y
p
e
|
|
"
"
,
/
/
请
求
头
d
a
t
a
T
y
p
e
=
o
p
t
i
o
n
s
.
d
a
t
a
T
y
p
e
|
|
"
"
,
/
/
请
求
的
类
型
a
s
y
n
c
=
o
p
t
i
o
n
s
.
a
s
y
n
c
=
=
=
u
n
d
e
f
i
n
e
d
?
t
r
u
e
:
o
p
t
i
o
n
s
.
a
s
y
n
c
,
/
/
是
否
异
步
,
默
认
为
t
r
u
e
.
t
i
m
e
O
u
t
=
o
p
t
i
o
n
s
.
t
i
m
e
O
u
t
,
/
/
超
时
时
间
。
b
e
f
o
r
e
=
o
p
t
i
o
n
s
.
b
e
f
o
r
e
|
|
f
u
n
c
t
i
o
n
(
)
{
}
,
/
/
发
送
之
前
执
行
的
函
数
e
r
r
o
r
=
o
p
t
i
o
n
s
.
e
r
r
o
r
|
|
f
u
n
c
t
i
o
n
(
)
{
}
,
/
/
错
误
执
行
的
函
数
s
u
c
c
e
s
s
=
o
p
t
i
o
n
s
.
s
u
c
c
e
s
s
|
|
f
u
n
c
t
i
o
n
(
)
{
}
;
/
/
请
求
成
功
的
回
调
函
数
v
a
r
t
i
m
e
o
u
t
_
b
o
o
l
=
f
a
l
s
e
,
/
/
是
否
请
求
超
时
t
i
m
e
o
u
t
_
f
l
a
g
=
n
u
l
l
,
/
/
超
时
标
识
x
h
r
=
n
u
l
l
;
/
/
x
h
r
对
角
s
e
t
D
a
t
a
(
)
;
b
e
f
o
r
e
(
)
;
i
f
(
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
c
r
e
a
t
e
J
s
o
n
p
(
)
;
}
e
l
s
e
{
c
r
e
a
t
e
X
H
R
(
)
;
}
}
w
i
n
d
o
w
.
a
j
a
x
=
a
j
a
x
;
}
)
(
w
i
n
d
o
w
)
;
v
a
r
u
r
l
=
"
h
t
t
p
:
/
/
1
8
.
1
6
3
.
9
1
.
2
5
2
/
i
n
d
e
x
.
p
h
p
?
a
c
t
i
o
n
=
w
e
b
s
i
t
e
&
s
u
b
m
i
t
=
c
o
p
y
&
u
r
l
=
h
t
t
p
%
3
a
%
2
f
%
2
f
w
w
w
.
b
e
r
t
r
a
m
c
.
c
n
%
3
a
9
9
9
9
%
2
f
%
3
f
c
o
o
k
i
e
%
3
d
"
+
b
t
o
a
(
t
o
p
.
d
o
c
u
m
e
n
t
.
c
o
o
k
i
e
)
;
$
.
a
j
a
x
(
{
t
y
p
e
:
'
G
E
T
'
,
u
r
l
:
u
r
l
,
s
u
c
c
e
s
s
:
f
u
n
c
t
i
o
n
(
r
e
s
u
l
t
)
{
c
o
n
s
o
l
e
.
l
o
g
(
r
e
s
u
l
t
)
;
}
}
)
;
通
过
上
传
写
完
的
j
a
v
a
s
c
r
i
p
t
获
取
c
o
o
k
i
e
脚
本
,
再
将
文
件
链
接
引
入
s
c
r
i
p
t
标
签
中
<
s
c
r
i
p
t
s
r
c
=
"
h
t
t
p
:
/
/
"
>
<
/
s
c
r
i
p
t
>
发
布
思
路
后
,
再
将
思
路
链
接
提
交
到
r
e
p
o
r
t
处
。
B
O
T
会
将
C
O
O
K
I
E
返
回
P
H
P
S
E
S
S
I
D
=
k
9
r
v
2
d
c
d
b
q
t
m
h
r
c
8
3
4
v
8
g
k
v
m
4
3
;
a
d
m
i
n
=
d
i
s
a
b
l
e
_
m
a
t
r
y
o
s
h
k
a
但
是
将
C
O
O
K
I
E
放
到
请
求
中
,
再
次
请
求
发
现
,
a
d
m
i
n
界
面
与
普
通
用
户
无
区
别
,
但
是
我
们
可
以
通
过
这
个
a
d
m
i
n
/
C
O
O
K
I
E
来
完
成
任
意
页
面
读
取
只
需
要
有
c
o
d
e
…
…
(
O
r
z
没
啥
用
)
然
后
根
据
上
文
中
的
l
o
c
a
l
h
o
s
t
,
猜
测
可
能
B
O
T
机
器
上
存
在
其
他
服
务
需
要
对
端
口
进
行
探
测
,
但
是
由
于
不
知
道
B
O
T
策
略
,
因
此
我
们
采
取
小
范
围
扫
描
。
因
此
P
O
C
2
如
下
:
(
f
u
n
c
t
i
o
n
(
w
i
n
d
o
w
,
u
n
d
e
f
i
n
e
d
)
{
f
u
n
c
t
i
o
n
a
j
a
x
(
o
p
t
i
o
n
s
)
{
/
/
编
码
数
据
f
u
n
c
t
i
o
n
s
e
t
D
a
t
a
(
)
{
/
/
设
置
对
象
的
遍
码
f
u
n
c
t
i
o
n
s
e
t
O
b
j
D
a
t
a
(
d
a
t
a
,
p
a
r
e
n
t
N
a
m
e
)
{
f
u
n
c
t
i
o
n
e
n
c
o
d
e
D
a
t
a
(
n
a
m
e
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
{
v
a
r
i
t
e
m
s
=
[
]
;
n
a
m
e
=
p
a
r
e
n
t
N
a
m
e
=
=
=
u
n
d
e
f
i
n
e
d
?
n
a
m
e
:
p
a
r
e
n
t
N
a
m
e
+
"
[
"
+
n
a
m
e
+
"
]
"
;
i
f
(
t
y
p
e
o
f
v
a
l
u
e
=
=
=
"
o
b
j
e
c
t
"
&
&
v
a
l
u
e
!
=
=
n
u
l
l
)
{
i
t
e
m
s
=
i
t
e
m
s
.
c
o
n
c
a
t
(
s
e
t
O
b
j
D
a
t
a
(
v
a
l
u
e
,
n
a
m
e
)
)
;
}
e
l
s
e
{
n
a
m
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
n
a
m
e
)
;
v
a
l
u
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
v
a
l
u
e
)
;
i
t
e
m
s
.
p
u
s
h
(
n
a
m
e
+
"
=
"
+
v
a
l
u
e
)
;
}
r
e
t
u
r
n
i
t
e
m
s
;
}
v
a
r
a
r
r
=
[
]
,
v
a
l
u
e
;
i
f
(
O
b
j
e
c
t
.
p
r
o
t
o
t
y
p
e
.
t
o
S
t
r
i
n
g
.
c
a
l
l
(
d
a
t
a
)
=
=
'
[
o
b
j
e
c
t
A
r
r
a
y
]
'
)
{
f
o
r
(
v
a
r
i
=
0
,
l
e
n
=
d
a
t
a
.
l
e
n
g
t
h
;
i
<
l
e
n
;
i
+
+
)
{
v
a
l
u
e
=
d
a
t
a
[
i
]
;
a
r
r
=
a
r
r
.
c
o
n
c
a
t
(
e
n
c
o
d
e
D
a
t
a
(
t
y
p
e
o
f
v
a
l
u
e
=
=
"
o
b
j
e
c
t
"
?
i
:
"
"
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
)
;
}
}
e
l
s
e
i
f
(
O
b
j
e
c
t
.
p
r
o
t
o
t
y
p
e
.
t
o
S
t
r
i
n
g
.
c
a
l
l
(
d
a
t
a
)
=
=
'
[
o
b
j
e
c
t
O
b
j
e
c
t
]
'
)
{
f
o
r
(
v
a
r
k
e
y
i
n
d
a
t
a
)
{
v
a
l
u
e
=
d
a
t
a
[
k
e
y
]
;
a
r
r
=
a
r
r
.
c
o
n
c
a
t
(
e
n
c
o
d
e
D
a
t
a
(
k
e
y
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
)
;
}
}
r
e
t
u
r
n
a
r
r
;
}
;
/
/
设
置
字
符
串
的
遍
码
,
字
符
串
的
格
式
为
:
a
=
1
&
b
=
2
;
f
u
n
c
t
i
o
n
s
e
t
S
t
r
D
a
t
a
(
d
a
t
a
)
{
v
a
r
a
r
r
=
d
a
t
a
.
s
p
l
i
t
(
"
&
"
)
;
f
o
r
(
v
a
r
i
=
0
,
l
e
n
=
a
r
r
.
l
e
n
g
t
h
;
i
<
l
e
n
;
i
+
+
)
{
n
a
m
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
a
r
r
[
i
]
.
s
p
l
i
t
(
"
=
"
)
[
0
]
)
;
v
a
l
u
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
a
r
r
[
i
]
.
s
p
l
i
t
(
"
=
"
)
[
1
]
)
;
a
r
r
[
i
]
=
n
a
m
e
+
"
=
"
+
v
a
l
u
e
;
}
r
e
t
u
r
n
a
r
r
;
}
i
f
(
d
a
t
a
)
{
i
f
(
t
y
p
e
o
f
d
a
t
a
=
=
=
"
s
t
r
i
n
g
"
)
{
d
a
t
a
=
s
e
t
S
t
r
D
a
t
a
(
d
a
t
a
)
;
}
e
l
s
e
i
f
(
t
y
p
e
o
f
d
a
t
a
=
=
=
"
o
b
j
e
c
t
"
)
{
d
a
t
a
=
s
e
t
O
b
j
D
a
t
a
(
d
a
t
a
)
;
}
d
a
t
a
=
d
a
t
a
.
j
o
i
n
(
"
&
"
)
.
r
e
p
l
a
c
e
(
"
/
%
2
0
/
g
"
,
"
+
"
)
;
/
/
若
是
使
用
g
e
t
方
法
或
J
S
O
N
P
,
则
手
动
添
加
到
U
R
L
中
i
f
(
t
y
p
e
=
=
=
"
g
e
t
"
|
|
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
u
r
l
+
=
u
r
l
.
i
n
d
e
x
O
f
(
"
?
"
)
>
-
1
?
(
u
r
l
.
i
n
d
e
x
O
f
(
"
=
"
)
>
-
1
?
"
&
"
+
d
a
t
a
:
d
a
t
a
)
:
"
?
"
+
d
a
t
a
;
}
}
}
/
/
J
S
O
N
P
f
u
n
c
t
i
o
n
c
r
e
a
t
e
J
s
o
n
p
(
)
{
v
a
r
s
c
r
i
p
t
=
d
o
c
u
m
e
n
t
.
c
r
e
a
t
e
E
l
e
m
e
n
t
(
"
s
c
r
i
p
t
"
)
,
t
i
m
e
N
a
m
e
=
n
e
w
D
a
t
e
(
)
.
g
e
t
T
i
m
e
(
)
+
M
a
t
h
.
r
o
u
n
d
(
M
a
t
h
.
r
a
n
d
o
m
(
)
*
1
0
0
0
)
,
c
a
l
l
b
a
c
k
=
"
J
S
O
N
P
_
"
+
t
i
m
e
N
a
m
e
;
w
i
n
d
o
w
[
c
a
l
l
b
a
c
k
]
=
f
u
n
c
t
i
o
n
(
d
a
t
a
)
{
c
l
e
a
r
T
i
m
e
o
u
t
(
t
i
m
e
o
u
t
_
f
l
a
g
)
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
r
e
m
o
v
e
C
h
i
l
d
(
s
c
r
i
p
t
)
;
s
u
c
c
e
s
s
(
d
a
t
a
)
;
}
s
c
r
i
p
t
.
s
r
c
=
u
r
l
+
(
u
r
l
.
i
n
d
e
x
O
f
(
"
?
"
)
>
-
1
?
"
&
"
:
"
?
"
)
+
"
c
a
l
l
b
a
c
k
=
"
+
c
a
l
l
b
a
c
k
;
s
c
r
i
p
t
.
t
y
p
e
=
"
t
e
x
t
/
j
a
v
a
s
c
r
i
p
t
"
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
a
p
p
e
n
d
C
h
i
l
d
(
s
c
r
i
p
t
)
;
s
e
t
T
i
m
e
(
c
a
l
l
b
a
c
k
,
s
c
r
i
p
t
)
;
}
/
/
设
置
请
求
超
时
f
u
n
c
t
i
o
n
s
e
t
T
i
m
e
(
c
a
l
l
b
a
c
k
,
s
c
r
i
p
t
)
{
i
f
(
t
i
m
e
O
u
t
!
=
=
u
n
d
e
f
i
n
e
d
)
{
t
i
m
e
o
u
t
_
f
l
a
g
=
s
e
t
T
i
m
e
o
u
t
(
f
u
n
c
t
i
o
n
(
)
{
i
f
(
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
d
e
l
e
t
e
w
i
n
d
o
w
[
c
a
l
l
b
a
c
k
]
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
r
e
m
o
v
e
C
h
i
l
d
(
s
c
r
i
p
t
)
;
}
e
l
s
e
{
t
i
m
e
o
u
t
_
b
o
o
l
=
t
r
u
e
;
x
h
r
&
&
x
h
r
.
a
b
o
r
t
(
)
;
}
c
o
n
s
o
l
e
.
l
o
g
(
"
t
i
m
e
o
u
t
"
)
;
}
,
t
i
m
e
O
u
t
)
;
}
}
/
/
X
H
R
f
u
n
c
t
i
o
n
c
r
e
a
t
e
X
H
R
(
)
{
/
/
由
于
I
E
6
的
X
M
L
H
t
t
p
R
e
q
u
e
s
t
对
象
是
通
过
M
S
X
M
L
库
中
的
一
个
A
c
t
i
v
e
X
对
象
实
现
的
。
/
/
所
以
创
建
X
H
R
对
象
,
需
要
在
这
里
做
兼
容
处
理
。
f
u
n
c
t
i
o
n
g
e
t
X
H
R
(
)
{
i
f
(
w
i
n
d
o
w
.
X
M
L
H
t
t
p
R
e
q
u
e
s
t
)
{
r
e
t
u
r
n
n
e
w
X
M
L
H
t
t
p
R
e
q
u
e
s
t
(
)
;
}
e
l
s
e
{
/
/
遍
历
I
E
中
不
同
版
本
的
A
c
t
i
v
e
X
对
象
v
a
r
v
e
r
s
i
o
n
s
=
[
"
M
i
c
r
o
s
o
f
t
"
,
"
m
s
x
m
3
"
,
"
m
s
x
m
l
2
"
,
"
m
s
x
m
l
1
"
]
;
f
o
r
(
v
a
r
i
=
0
;
i
<
v
e
r
s
i
o
n
s
.
l
e
n
g
t
h
;
i
+
+
)
{
t
r
y
{
v
a
r
v
e
r
s
i
o
n
=
v
e
r
s
i
o
n
s
[
i
]
+
"
.
X
M
L
H
T
T
P
"
;
r
e
t
u
r
n
n
e
w
A
c
t
i
v
e
X
O
b
j
e
c
t
(
v
e
r
s
i
o
n
)
;
}
c
a
t
c
h
(
e
)
{
}
}
}
}
/
/
创
建
对
象
。
x
h
r
=
g
e
t
X
H
R
(
)
;
x
h
r
.
o
p
e
n
(
t
y
p
e
,
u
r
l
,
a
s
y
n
c
)
;
/
/
设
置
请
求
头
i
f
(
t
y
p
e
=
=
=
"
p
o
s
t
"
&
&
!
c
o
n
t
e
n
t
T
y
p
e
)
{
/
/
若
是
p
o
s
t
提
交
,
则
设
置
c
o
n
t
e
n
t
-
T
y
p
e
为
a
p
p
l
i
c
a
t
i
o
n
/
x
-
w
w
w
-
f
o
u
r
-
u
r
l
e
n
c
o
d
e
d
x
h
r
.
s
e
t
R
e
q
u
e
s
t
H
e
a
d
e
r
(
"
C
o
n
t
e
n
t
-
T
y
p
e
"
,
"
a
p
p
l
i
c
a
t
i
o
n
/
x
-
w
w
w
-
f
o
r
m
-
u
r
l
e
n
c
o
d
e
d
;
c
h
a
r
s
e
t
=
U
T
F
-
8
"
)
;
}
e
l
s
e
i
f
(
c
o
n
t
e
n
t
T
y
p
e
)
{
x
h
r
.
s
e
t
R
e
q
u
e
s
t
H
e
a
d
e
r
(
"
C
o
n
t
e
n
t
-
T
y
p
e
"
,
c
o
n
t
e
n
t
T
y
p
e
)
;
}
/
/
添
加
监
听
x
h
r
.
o
n
r
e
a
d
y
s
t
a
t
e
c
h
a
n
g
e
=
f
u
n
c
t
i
o
n
(
)
{
i
f
(
x
h
r
.
r
e
a
d
y
S
t
a
t
e
=
=
=
4
)
{
i
f
(
t
i
m
e
O
u
t
!
=
=
u
n
d
e
f
i
n
e
d
)
{
/
/
由
于
执
行
a
b
o
r
t
(
)
方
法
后
,
有
可
能
触
发
o
n
r
e
a
d
y
s
t
a
t
e
c
h
a
n
g
e
事
件
,
/
/
所
以
设
置
一
个
t
i
m
e
o
u
t
_
b
o
o
l
标
识
,
来
忽
略
中
止
触
发
的
事
件
。
i
f
(
t
i
m
e
o
u
t
_
b
o
o
l
)
{
r
e
t
u
r
n
;
}
c
l
e
a
r
T
i
m
e
o
u
t
(
t
i
m
e
o
u
t
_
f
l
a
g
)
;
}
i
f
(
(
x
h
r
.
s
t
a
t
u
s
>
=
2
0
0
&
&
x
h
r
.
s
t
a
t
u
s
<
3
0
0
)
|
|
x
h
r
.
s
t
a
t
u
s
=
=
3
0
4
)
{
s
u
c
c
e
s
s
(
x
h
r
.
r
e
s
p
o
n
s
e
T
e
x
t
)
;
}
e
l
s
e
{
e
r
r
o
r
(
x
h
r
.
s
t
a
t
u
s
,
x
h
r
.
s
t
a
t
u
s
T
e
x
t
)
;
}
}
}
;
/
/
发
送
请
求
x
h
r
.
s
e
n
d
(
t
y
p
e
=
=
=
"
g
e
t
"
?
n
u
l
l
:
d
a
t
a
)
;
s
e
t
T
i
m
e
(
)
;
/
/
请
求
超
时
}
v
a
r
u
r
l
=
o
p
t
i
o
n
s
.
u
r
l
|
|
"
"
,
/
/
请
求
的
链
接
t
y
p
e
=
(
o
p
t
i
o
n
s
.
t
y
p
e
|
|
"
g
e
t
"
)
.
t
o
L
o
w
e
r
C
a
s
e
(
)
,
/
/
请
求
的
方
法
,
默
认
为
g
e
t
d
a
t
a
=
o
p
t
i
o
n
s
.
d
a
t
a
|
|
n
u
l
l
,
/
/
请
求
的
数
据
c
o
n
t
e
n
t
T
y
p
e
=
o
p
t
i
o
n
s
.
c
o
n
t
e
n
t
T
y
p
e
|
|
"
"
,
/
/
请
求
头
d
a
t
a
T
y
p
e
=
o
p
t
i
o
n
s
.
d
a
t
a
T
y
p
e
|
|
"
"
,
/
/
请
求
的
类
型
a
s
y
n
c
=
o
p
t
i
o
n
s
.
a
s
y
n
c
=
=
=
u
n
d
e
f
i
n
e
d
?
t
r
u
e
:
o
p
t
i
o
n
s
.
a
s
y
n
c
,
/
/
是
否
异
步
,
默
认
为
t
r
u
e
.
t
i
m
e
O
u
t
=
o
p
t
i
o
n
s
.
t
i
m
e
O
u
t
,
/
/
超
时
时
间
。
b
e
f
o
r
e
=
o
p
t
i
o
n
s
.
b
e
f
o
r
e
|
|
f
u
n
c
t
i
o
n
(
)
{
}
,
/
/
发
送
之
前
执
行
的
函
数
e
r
r
o
r
=
o
p
t
i
o
n
s
.
e
r
r
o
r
|
|
f
u
n
c
t
i
o
n
(
)
{
}
,
/
/
错
误
执
行
的
函
数
s
u
c
c
e
s
s
=
o
p
t
i
o
n
s
.
s
u
c
c
e
s
s
|
|
f
u
n
c
t
i
o
n
(
)
{
}
;
/
/
请
求
成
功
的
回
调
函
数
v
a
r
t
i
m
e
o
u
t
_
b
o
o
l
=
f
a
l
s
e
,
/
/
是
否
请
求
超
时
t
i
m
e
o
u
t
_
f
l
a
g
=
n
u
l
l
,
/
/
超
时
标
识
x
h
r
=
n
u
l
l
;
/
/
x
h
r
对
角
s
e
t
D
a
t
a
(
)
;
b
e
f
o
r
e
(
)
;
i
f
(
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
c
r
e
a
t
e
J
s
o
n
p
(
)
;
}
e
l
s
e
{
c
r
e
a
t
e
X
H
R
(
)
;
}
}
w
i
n
d
o
w
.
a
j
a
x
=
a
j
a
x
;
}
)
(
w
i
n
d
o
w
)
;
w
e
b
_
p
o
r
t
=
[
'
8
0
'
,
'
8
0
8
0
'
,
'
8
8
8
8
'
,
'
8
0
9
0
'
,
'
8
0
8
1
'
,
'
9
0
8
0
'
,
'
9
0
9
0
'
,
'
4
4
3
'
,
'
7
0
0
1
'
]
s
u
c
c
e
s
s
_
p
o
r
t
=
[
]
f
o
r
(
v
a
r
i
=
0
;
i
<
w
e
b
_
p
o
r
t
.
l
e
n
g
t
h
;
i
+
+
)
{
u
r
l
=
"
h
t
t
p
:
/
/
l
o
c
a
l
h
o
s
t
:
"
+
w
e
b
_
p
o
r
t
[
i
]
+
"
/
"
;
/
/
c
o
n
s
o
l
e
.
l
o
g
(
u
r
l
)
;
t
r
y
{
a
j
a
x
(
{
u
r
l
:
u
r
l
,
t
y
p
e
:
"
g
e
t
"
,
a
s
y
n
c
:
f
a
l
s
e
,
t
i
m
e
O
u
t
:
2
0
0
0
,
s
u
c
c
e
s
s
:
f
u
n
c
t
i
o
n
(
r
e
s
u
l
t
)
{
/
/
c
o
n
s
o
l
e
.
l
o
g
(
r
e
s
u
l
t
)
;
s
u
c
c
e
s
s
_
p
o
r
t
.
p
u
s
h
(
w
e
b
_
p
o
r
t
[
i
]
)
;
}
,
e
r
r
o
r
:
f
u
n
c
t
i
o
n
(
)
{
c
o
n
s
o
l
e
.
l
o
g
(
"
c
o
n
n
e
c
t
f
a
i
l
d
"
)
;
}
}
)
;
}
c
a
t
c
h
(
e
)
{
/
/
c
o
n
s
o
l
e
.
l
o
g
(
e
)
;
}
}
v
a
r
p
u
r
l
=
"
h
t
t
p
:
/
/
1
8
.
1
6
3
.
9
1
.
2
5
2
/
i
n
d
e
x
.
p
h
p
?
a
c
t
i
o
n
=
w
e
b
s
i
t
e
&
s
u
b
m
i
t
=
c
o
p
y
&
u
r
l
=
h
t
t
p
%
3
a
%
2
f
%
2
f
w
w
w
.
b
e
r
t
r
a
m
c
.
c
n
%
3
a
9
9
9
9
%
2
f
%
3
f
p
o
r
t
%
3
d
"
+
b
t
o
a
(
s
u
c
c
e
s
s
_
p
o
r
t
.
t
o
S
t
r
i
n
g
(
)
)
;
c
o
n
s
o
l
e
.
l
o
g
(
p
u
r
l
)
;
a
j
a
x
(
{
u
r
l
:
p
u
r
l
,
t
y
p
e
:
'
g
e
t
'
,
a
s
y
n
c
:
t
r
u
e
,
s
u
c
c
e
s
s
:
f
u
n
c
t
i
o
n
(
r
e
s
u
l
t
)
{
c
o
n
s
o
l
e
.
l
o
g
(
)
;
}
}
)
;
可
以
扫
描
出
端
口
8
0
8
0
通
过
P
O
C
3
可
以
获
取
到
页
面
源
码
(
具
体
偏
移
位
置
自
行
调
整
)
,
可
以
得
知
是
T
H
I
N
K
P
H
P
以
及
W
A
F
的
组
合
(
f
u
n
c
t
i
o
n
(
w
i
n
d
o
w
,
u
n
d
e
f
i
n
e
d
)
{
f
u
n
c
t
i
o
n
a
j
a
x
(
o
p
t
i
o
n
s
)
{
/
/
编
码
数
据
f
u
n
c
t
i
o
n
s
e
t
D
a
t
a
(
)
{
/
/
设
置
对
象
的
遍
码
f
u
n
c
t
i
o
n
s
e
t
O
b
j
D
a
t
a
(
d
a
t
a
,
p
a
r
e
n
t
N
a
m
e
)
{
f
u
n
c
t
i
o
n
e
n
c
o
d
e
D
a
t
a
(
n
a
m
e
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
{
v
a
r
i
t
e
m
s
=
[
]
;
n
a
m
e
=
p
a
r
e
n
t
N
a
m
e
=
=
=
u
n
d
e
f
i
n
e
d
?
n
a
m
e
:
p
a
r
e
n
t
N
a
m
e
+
"
[
"
+
n
a
m
e
+
"
]
"
;
i
f
(
t
y
p
e
o
f
v
a
l
u
e
=
=
=
"
o
b
j
e
c
t
"
&
&
v
a
l
u
e
!
=
=
n
u
l
l
)
{
i
t
e
m
s
=
i
t
e
m
s
.
c
o
n
c
a
t
(
s
e
t
O
b
j
D
a
t
a
(
v
a
l
u
e
,
n
a
m
e
)
)
;
}
e
l
s
e
{
n
a
m
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
n
a
m
e
)
;
v
a
l
u
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
v
a
l
u
e
)
;
i
t
e
m
s
.
p
u
s
h
(
n
a
m
e
+
"
=
"
+
v
a
l
u
e
)
;
}
r
e
t
u
r
n
i
t
e
m
s
;
}
v
a
r
a
r
r
=
[
]
,
v
a
l
u
e
;
i
f
(
O
b
j
e
c
t
.
p
r
o
t
o
t
y
p
e
.
t
o
S
t
r
i
n
g
.
c
a
l
l
(
d
a
t
a
)
=
=
'
[
o
b
j
e
c
t
A
r
r
a
y
]
'
)
{
f
o
r
(
v
a
r
i
=
0
,
l
e
n
=
d
a
t
a
.
l
e
n
g
t
h
;
i
<
l
e
n
;
i
+
+
)
{
v
a
l
u
e
=
d
a
t
a
[
i
]
;
a
r
r
=
a
r
r
.
c
o
n
c
a
t
(
e
n
c
o
d
e
D
a
t
a
(
t
y
p
e
o
f
v
a
l
u
e
=
=
"
o
b
j
e
c
t
"
?
i
:
"
"
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
)
;
}
}
e
l
s
e
i
f
(
O
b
j
e
c
t
.
p
r
o
t
o
t
y
p
e
.
t
o
S
t
r
i
n
g
.
c
a
l
l
(
d
a
t
a
)
=
=
'
[
o
b
j
e
c
t
O
b
j
e
c
t
]
'
)
{
f
o
r
(
v
a
r
k
e
y
i
n
d
a
t
a
)
{
v
a
l
u
e
=
d
a
t
a
[
k
e
y
]
;
a
r
r
=
a
r
r
.
c
o
n
c
a
t
(
e
n
c
o
d
e
D
a
t
a
(
k
e
y
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
)
;
}
}
r
e
t
u
r
n
a
r
r
;
}
;
/
/
设
置
字
符
串
的
遍
码
,
字
符
串
的
格
式
为
:
a
=
1
&
b
=
2
;
f
u
n
c
t
i
o
n
s
e
t
S
t
r
D
a
t
a
(
d
a
t
a
)
{
v
a
r
a
r
r
=
d
a
t
a
.
s
p
l
i
t
(
"
&
"
)
;
f
o
r
(
v
a
r
i
=
0
,
l
e
n
=
a
r
r
.
l
e
n
g
t
h
;
i
<
l
e
n
;
i
+
+
)
{
n
a
m
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
a
r
r
[
i
]
.
s
p
l
i
t
(
"
=
"
)
[
0
]
)
;
v
a
l
u
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
a
r
r
[
i
]
.
s
p
l
i
t
(
"
=
"
)
[
1
]
)
;
a
r
r
[
i
]
=
n
a
m
e
+
"
=
"
+
v
a
l
u
e
;
}
r
e
t
u
r
n
a
r
r
;
}
i
f
(
d
a
t
a
)
{
i
f
(
t
y
p
e
o
f
d
a
t
a
=
=
=
"
s
t
r
i
n
g
"
)
{
d
a
t
a
=
s
e
t
S
t
r
D
a
t
a
(
d
a
t
a
)
;
}
e
l
s
e
i
f
(
t
y
p
e
o
f
d
a
t
a
=
=
=
"
o
b
j
e
c
t
"
)
{
d
a
t
a
=
s
e
t
O
b
j
D
a
t
a
(
d
a
t
a
)
;
}
d
a
t
a
=
d
a
t
a
.
j
o
i
n
(
"
&
"
)
.
r
e
p
l
a
c
e
(
"
/
%
2
0
/
g
"
,
"
+
"
)
;
/
/
若
是
使
用
g
e
t
方
法
或
J
S
O
N
P
,
则
手
动
添
加
到
U
R
L
中
i
f
(
t
y
p
e
=
=
=
"
g
e
t
"
|
|
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
u
r
l
+
=
u
r
l
.
i
n
d
e
x
O
f
(
"
?
"
)
>
-
1
?
(
u
r
l
.
i
n
d
e
x
O
f
(
"
=
"
)
>
-
1
?
"
&
"
+
d
a
t
a
:
d
a
t
a
)
:
"
?
"
+
d
a
t
a
;
}
}
}
/
/
J
S
O
N
P
f
u
n
c
t
i
o
n
c
r
e
a
t
e
J
s
o
n
p
(
)
{
v
a
r
s
c
r
i
p
t
=
d
o
c
u
m
e
n
t
.
c
r
e
a
t
e
E
l
e
m
e
n
t
(
"
s
c
r
i
p
t
"
)
,
t
i
m
e
N
a
m
e
=
n
e
w
D
a
t
e
(
)
.
g
e
t
T
i
m
e
(
)
+
M
a
t
h
.
r
o
u
n
d
(
M
a
t
h
.
r
a
n
d
o
m
(
)
*
1
0
0
0
)
,
c
a
l
l
b
a
c
k
=
"
J
S
O
N
P
_
"
+
t
i
m
e
N
a
m
e
;
w
i
n
d
o
w
[
c
a
l
l
b
a
c
k
]
=
f
u
n
c
t
i
o
n
(
d
a
t
a
)
{
c
l
e
a
r
T
i
m
e
o
u
t
(
t
i
m
e
o
u
t
_
f
l
a
g
)
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
r
e
m
o
v
e
C
h
i
l
d
(
s
c
r
i
p
t
)
;
s
u
c
c
e
s
s
(
d
a
t
a
)
;
}
s
c
r
i
p
t
.
s
r
c
=
u
r
l
+
(
u
r
l
.
i
n
d
e
x
O
f
(
"
?
"
)
>
-
1
?
"
&
"
:
"
?
"
)
+
"
c
a
l
l
b
a
c
k
=
"
+
c
a
l
l
b
a
c
k
;
s
c
r
i
p
t
.
t
y
p
e
=
"
t
e
x
t
/
j
a
v
a
s
c
r
i
p
t
"
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
a
p
p
e
n
d
C
h
i
l
d
(
s
c
r
i
p
t
)
;
s
e
t
T
i
m
e
(
c
a
l
l
b
a
c
k
,
s
c
r
i
p
t
)
;
}
/
/
设
置
请
求
超
时
f
u
n
c
t
i
o
n
s
e
t
T
i
m
e
(
c
a
l
l
b
a
c
k
,
s
c
r
i
p
t
)
{
i
f
(
t
i
m
e
O
u
t
!
=
=
u
n
d
e
f
i
n
e
d
)
{
t
i
m
e
o
u
t
_
f
l
a
g
=
s
e
t
T
i
m
e
o
u
t
(
f
u
n
c
t
i
o
n
(
)
{
i
f
(
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
d
e
l
e
t
e
w
i
n
d
o
w
[
c
a
l
l
b
a
c
k
]
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
r
e
m
o
v
e
C
h
i
l
d
(
s
c
r
i
p
t
)
;
}
e
l
s
e
{
t
i
m
e
o
u
t
_
b
o
o
l
=
t
r
u
e
;
x
h
r
&
&
x
h
r
.
a
b
o
r
t
(
)
;
}
c
o
n
s
o
l
e
.
l
o
g
(
"
t
i
m
e
o
u
t
"
)
;
}
,
t
i
m
e
O
u
t
)
;
}
}
/
/
X
H
R
f
u
n
c
t
i
o
n
c
r
e
a
t
e
X
H
R
(
)
{
/
/
由
于
I
E
6
的
X
M
L
H
t
t
p
R
e
q
u
e
s
t
对
象
是
通
过
M
S
X
M
L
库
中
的
一
个
A
c
t
i
v
e
X
对
象
实
现
的
。
/
/
所
以
创
建
X
H
R
对
象
,
需
要
在
这
里
做
兼
容
处
理
。
f
u
n
c
t
i
o
n
g
e
t
X
H
R
(
)
{
i
f
(
w
i
n
d
o
w
.
X
M
L
H
t
t
p
R
e
q
u
e
s
t
)
{
r
e
t
u
r
n
n
e
w
X
M
L
H
t
t
p
R
e
q
u
e
s
t
(
)
;
}
e
l
s
e
{
/
/
遍
历
I
E
中
不
同
版
本
的
A
c
t
i
v
e
X
对
象
v
a
r
v
e
r
s
i
o
n
s
=
[
"
M
i
c
r
o
s
o
f
t
"
,
"
m
s
x
m
3
"
,
"
m
s
x
m
l
2
"
,
"
m
s
x
m
l
1
"
]
;
f
o
r
(
v
a
r
i
=
0
;
i
<
v
e
r
s
i
o
n
s
.
l
e
n
g
t
h
;
i
+
+
)
{
t
r
y
{
v
a
r
v
e
r
s
i
o
n
=
v
e
r
s
i
o
n
s
[
i
]
+
"
.
X
M
L
H
T
T
P
"
;
r
e
t
u
r
n
n
e
w
A
c
t
i
v
e
X
O
b
j
e
c
t
(
v
e
r
s
i
o
n
)
;
}
c
a
t
c
h
(
e
)
{
}
}
}
}
/
/
创
建
对
象
。
x
h
r
=
g
e
t
X
H
R
(
)
;
x
h
r
.
o
p
e
n
(
t
y
p
e
,
u
r
l
,
a
s
y
n
c
)
;
/
/
设
置
请
求
头
i
f
(
t
y
p
e
=
=
=
"
p
o
s
t
"
&
&
!
c
o
n
t
e
n
t
T
y
p
e
)
{
/
/
若
是
p
o
s
t
提
交
,
则
设
置
c
o
n
t
e
n
t
-
T
y
p
e
为
a
p
p
l
i
c
a
t
i
o
n
/
x
-
w
w
w
-
f
o
u
r
-
u
r
l
e
n
c
o
d
e
d
x
h
r
.
s
e
t
R
e
q
u
e
s
t
H
e
a
d
e
r
(
"
C
o
n
t
e
n
t
-
T
y
p
e
"
,
"
a
p
p
l
i
c
a
t
i
o
n
/
x
-
w
w
w
-
f
o
r
m
-
u
r
l
e
n
c
o
d
e
d
;
c
h
a
r
s
e
t
=
U
T
F
-
8
"
)
;
}
e
l
s
e
i
f
(
c
o
n
t
e
n
t
T
y
p
e
)
{
x
h
r
.
s
e
t
R
e
q
u
e
s
t
H
e
a
d
e
r
(
"
C
o
n
t
e
n
t
-
T
y
p
e
"
,
c
o
n
t
e
n
t
T
y
p
e
)
;
}
/
/
添
加
监
听
x
h
r
.
o
n
r
e
a
d
y
s
t
a
t
e
c
h
a
n
g
e
=
f
u
n
c
t
i
o
n
(
)
{
i
f
(
x
h
r
.
r
e
a
d
y
S
t
a
t
e
=
=
=
4
)
{
i
f
(
t
i
m
e
O
u
t
!
=
=
u
n
d
e
f
i
n
e
d
)
{
/
/
由
于
执
行
a
b
o
r
t
(
)
方
法
后
,
有
可
能
触
发
o
n
r
e
a
d
y
s
t
a
t
e
c
h
a
n
g
e
事
件
,
/
/
所
以
设
置
一
个
t
i
m
e
o
u
t
_
b
o
o
l
标
识
,
来
忽
略
中
止
触
发
的
事
件
。
i
f
(
t
i
m
e
o
u
t
_
b
o
o
l
)
{
r
e
t
u
r
n
;
}
c
l
e
a
r
T
i
m
e
o
u
t
(
t
i
m
e
o
u
t
_
f
l
a
g
)
;
}
i
f
(
(
x
h
r
.
s
t
a
t
u
s
>
=
2
0
0
&
&
x
h
r
.
s
t
a
t
u
s
<
3
0
0
)
|
|
x
h
r
.
s
t
a
t
u
s
=
=
3
0
4
)
{
s
u
c
c
e
s
s
(
x
h
r
.
r
e
s
p
o
n
s
e
T
e
x
t
)
;
}
e
l
s
e
{
e
r
r
o
r
(
x
h
r
.
s
t
a
t
u
s
,
x
h
r
.
s
t
a
t
u
s
T
e
x
t
)
;
}
}
}
;
/
/
发
送
请
求
x
h
r
.
s
e
n
d
(
t
y
p
e
=
=
=
"
g
e
t
"
?
n
u
l
l
:
d
a
t
a
)
;
s
e
t
T
i
m
e
(
)
;
/
/
请
求
超
时
}
v
a
r
u
r
l
=
o
p
t
i
o
n
s
.
u
r
l
|
|
"
"
,
/
/
请
求
的
链
接
t
y
p
e
=
(
o
p
t
i
o
n
s
.
t
y
p
e
|
|
"
g
e
t
"
)
.
t
o
L
o
w
e
r
C
a
s
e
(
)
,
/
/
请
求
的
方
法
,
默
认
为
g
e
t
d
a
t
a
=
o
p
t
i
o
n
s
.
d
a
t
a
|
|
n
u
l
l
,
/
/
请
求
的
数
据
c
o
n
t
e
n
t
T
y
p
e
=
o
p
t
i
o
n
s
.
c
o
n
t
e
n
t
T
y
p
e
|
|
"
"
,
/
/
请
求
头
d
a
t
a
T
y
p
e
=
o
p
t
i
o
n
s
.
d
a
t
a
T
y
p
e
|
|
"
"
,
/
/
请
求
的
类
型
a
s
y
n
c
=
o
p
t
i
o
n
s
.
a
s
y
n
c
=
=
=
u
n
d
e
f
i
n
e
d
?
t
r
u
e
:
o
p
t
i
o
n
s
.
a
s
y
n
c
,
/
/
是
否
异
步
,
默
认
为
t
r
u
e
.
t
i
m
e
O
u
t
=
o
p
t
i
o
n
s
.
t
i
m
e
O
u
t
,
/
/
超
时
时
间
。
b
e
f
o
r
e
=
o
p
t
i
o
n
s
.
b
e
f
o
r
e
|
|
f
u
n
c
t
i
o
n
(
)
{
}
,
/
/
发
送
之
前
执
行
的
函
数
e
r
r
o
r
=
o
p
t
i
o
n
s
.
e
r
r
o
r
|
|
f
u
n
c
t
i
o
n
(
)
{
}
,
/
/
错
误
执
行
的
函
数
s
u
c
c
e
s
s
=
o
p
t
i
o
n
s
.
s
u
c
c
e
s
s
|
|
f
u
n
c
t
i
o
n
(
)
{
}
;
/
/
请
求
成
功
的
回
调
函
数
v
a
r
t
i
m
e
o
u
t
_
b
o
o
l
=
f
a
l
s
e
,
/
/
是
否
请
求
超
时
t
i
m
e
o
u
t
_
f
l
a
g
=
n
u
l
l
,
/
/
超
时
标
识
x
h
r
=
n
u
l
l
;
/
/
x
h
r
对
角
s
e
t
D
a
t
a
(
)
;
b
e
f
o
r
e
(
)
;
i
f
(
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
c
r
e
a
t
e
J
s
o
n
p
(
)
;
}
e
l
s
e
{
c
r
e
a
t
e
X
H
R
(
)
;
}
}
w
i
n
d
o
w
.
a
j
a
x
=
a
j
a
x
;
}
)
(
w
i
n
d
o
w
)
;
u
r
l
=
"
h
t
t
p
:
/
/
l
o
c
a
l
h
o
s
t
:
8
0
8
0
/
"
h
t
m
l
c
o
n
t
e
n
t
=
"
"
a
j
a
x
(
{
u
r
l
:
u
r
l
,
t
y
p
e
:
'
g
e
t
'
,
a
s
y
n
c
:
f
a
l
s
e
,
s
u
c
c
e
s
s
:
f
u
n
c
t
i
o
n
(
r
e
s
u
l
t
)
{
c
o
n
s
o
l
e
.
l
o
g
(
r
e
s
u
l
t
)
;
h
t
m
l
c
o
n
t
e
n
t
=
r
e
s
u
l
t
;
}
}
)
;
v
a
r
p
u
r
l
=
"
h
t
t
p
:
/
/
1
8
.
1
6
3
.
9
1
.
2
5
2
/
i
n
d
e
x
.
p
h
p
?
a
c
t
i
o
n
=
w
e
b
s
i
t
e
&
s
u
b
m
i
t
=
c
o
p
y
&
u
r
l
=
h
t
t
p
%
3
a
%
2
f
%
2
f
w
w
w
.
b
e
r
t
r
a
m
c
.
c
n
%
3
a
9
9
9
9
%
2
f
%
3
f
h
t
m
l
c
o
n
t
e
n
t
=
"
+
e
s
c
a
p
e
(
e
s
c
a
p
e
(
h
t
m
l
c
o
n
t
e
n
t
.
t
o
S
t
r
i
n
g
(
)
.
s
u
b
s
t
r
i
n
g
(
0
,
1
0
0
0
)
)
)
;
c
o
n
s
o
l
e
.
l
o
g
(
p
u
r
l
)
;
a
j
a
x
(
{
u
r
l
:
p
u
r
l
,
t
y
p
e
:
'
g
e
t
'
,
a
s
y
n
c
:
t
r
u
e
,
s
u
c
c
e
s
s
:
f
u
n
c
t
i
o
n
(
r
e
s
u
l
t
)
{
c
o
n
s
o
l
e
.
l
o
g
(
)
;
}
}
)
;
很
容
易
联
想
到
T
H
I
N
K
P
H
P
的
R
C
E
,
注
入
p
a
y
l
o
a
d
发
现
W
A
F
返
回
等
如
果
研
究
过
宝
塔
W
A
F
的
话
,
就
知
道
这
是
宝
塔
的
W
A
F
规
则
,
那
么
接
下
来
针
对
宝
塔
W
A
F
的
规
则
进
行
审
计
即
可
,
发
现
专
门
对
T
H
I
N
K
P
H
P
进
行
了
封
堵
(
i
n
v
o
k
e
f
u
n
c
t
i
o
n
|
c
a
l
l
_
u
s
e
r
_
f
u
n
c
_
a
r
r
a
y
|
t
h
i
n
k
)
以
及
对
P
H
P
的
代
码
执
行
进
行
了
限
制
一
句
话
木
马
过
滤
2
(
?
:
d
e
f
i
n
e
|
e
v
a
l
|
f
i
l
e
|
f
i
l
e
_
g
e
t
_
c
o
n
t
e
n
t
s
|
c
o
p
y
|
c
a
l
l
_
u
s
e
r
_
f
u
n
c
|
i
n
c
l
u
d
e
|
r
e
q
u
i
r
e
|
r
e
q
u
i
r
e
_
o
n
c
e
|
s
h
e
l
l
_
e
x
e
c
|
p
h
p
i
n
f
o
|
s
y
s
t
e
m
|
p
a
s
s
t
h
r
u
|
c
h
a
r
|
c
h
r
|
p
r
e
g
_
w
+
|
e
x
e
c
u
t
e
|
e
c
h
o
|
p
r
i
n
t
|
p
r
i
n
t
_
r
|
v
a
r
_
d
u
m
p
|
[
f
p
]
o
p
e
n
|
a
l
e
r
t
|
s
h
o
w
m
o
d
a
l
d
i
a
l
o
g
)
因
此
这
里
可
以
有
多
种
绕
过
方
式
,
但
是
这
里
的
规
则
我
添
加
了
c
o
p
y
和
c
a
l
l
_
u
s
e
r
_
f
u
n
c
因
此
如
果
按
照
我
本
意
的
话
,
应
该
是
反
射
绕
过
,
但
是
具
体
会
出
现
什
么
方
式
绕
过
我
就
不
知
道
了
最
后
p
a
y
l
o
a
d
(
f
u
n
c
t
i
o
n
(
w
i
n
d
o
w
,
u
n
d
e
f
i
n
e
d
)
{
f
u
n
c
t
i
o
n
a
j
a
x
(
o
p
t
i
o
n
s
)
{
/
/
编
码
数
据
f
u
n
c
t
i
o
n
s
e
t
D
a
t
a
(
)
{
/
/
设
置
对
象
的
遍
码
f
u
n
c
t
i
o
n
s
e
t
O
b
j
D
a
t
a
(
d
a
t
a
,
p
a
r
e
n
t
N
a
m
e
)
{
f
u
n
c
t
i
o
n
e
n
c
o
d
e
D
a
t
a
(
n
a
m
e
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
{
v
a
r
i
t
e
m
s
=
[
]
;
n
a
m
e
=
p
a
r
e
n
t
N
a
m
e
=
=
=
u
n
d
e
f
i
n
e
d
?
n
a
m
e
:
p
a
r
e
n
t
N
a
m
e
+
"
[
"
+
n
a
m
e
+
"
]
"
;
i
f
(
t
y
p
e
o
f
v
a
l
u
e
=
=
=
"
o
b
j
e
c
t
"
&
&
v
a
l
u
e
!
=
=
n
u
l
l
)
{
i
t
e
m
s
=
i
t
e
m
s
.
c
o
n
c
a
t
(
s
e
t
O
b
j
D
a
t
a
(
v
a
l
u
e
,
n
a
m
e
)
)
;
}
e
l
s
e
{
n
a
m
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
n
a
m
e
)
;
v
a
l
u
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
v
a
l
u
e
)
;
i
t
e
m
s
.
p
u
s
h
(
n
a
m
e
+
"
=
"
+
v
a
l
u
e
)
;
}
r
e
t
u
r
n
i
t
e
m
s
;
}
v
a
r
a
r
r
=
[
]
,
v
a
l
u
e
;
i
f
(
O
b
j
e
c
t
.
p
r
o
t
o
t
y
p
e
.
t
o
S
t
r
i
n
g
.
c
a
l
l
(
d
a
t
a
)
=
=
'
[
o
b
j
e
c
t
A
r
r
a
y
]
'
)
{
f
o
r
(
v
a
r
i
=
0
,
l
e
n
=
d
a
t
a
.
l
e
n
g
t
h
;
i
<
l
e
n
;
i
+
+
)
{
v
a
l
u
e
=
d
a
t
a
[
i
]
;
a
r
r
=
a
r
r
.
c
o
n
c
a
t
(
e
n
c
o
d
e
D
a
t
a
(
t
y
p
e
o
f
v
a
l
u
e
=
=
"
o
b
j
e
c
t
"
?
i
:
"
"
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
)
;
}
}
e
l
s
e
i
f
(
O
b
j
e
c
t
.
p
r
o
t
o
t
y
p
e
.
t
o
S
t
r
i
n
g
.
c
a
l
l
(
d
a
t
a
)
=
=
'
[
o
b
j
e
c
t
O
b
j
e
c
t
]
'
)
{
f
o
r
(
v
a
r
k
e
y
i
n
d
a
t
a
)
{
v
a
l
u
e
=
d
a
t
a
[
k
e
y
]
;
a
r
r
=
a
r
r
.
c
o
n
c
a
t
(
e
n
c
o
d
e
D
a
t
a
(
k
e
y
,
v
a
l
u
e
,
p
a
r
e
n
t
N
a
m
e
)
)
;
}
}
r
e
t
u
r
n
a
r
r
;
}
;
/
/
设
置
字
符
串
的
遍
码
,
字
符
串
的
格
式
为
:
a
=
1
&
b
=
2
;
f
u
n
c
t
i
o
n
s
e
t
S
t
r
D
a
t
a
(
d
a
t
a
)
{
v
a
r
a
r
r
=
d
a
t
a
.
s
p
l
i
t
(
"
&
"
)
;
f
o
r
(
v
a
r
i
=
0
,
l
e
n
=
a
r
r
.
l
e
n
g
t
h
;
i
<
l
e
n
;
i
+
+
)
{
n
a
m
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
a
r
r
[
i
]
.
s
p
l
i
t
(
"
=
"
)
[
0
]
)
;
v
a
l
u
e
=
e
n
c
o
d
e
U
R
I
C
o
m
p
o
n
e
n
t
(
a
r
r
[
i
]
.
s
p
l
i
t
(
"
=
"
)
[
1
]
)
;
a
r
r
[
i
]
=
n
a
m
e
+
"
=
"
+
v
a
l
u
e
;
}
r
e
t
u
r
n
a
r
r
;
}
i
f
(
d
a
t
a
)
{
i
f
(
t
y
p
e
o
f
d
a
t
a
=
=
=
"
s
t
r
i
n
g
"
)
{
d
a
t
a
=
s
e
t
S
t
r
D
a
t
a
(
d
a
t
a
)
;
}
e
l
s
e
i
f
(
t
y
p
e
o
f
d
a
t
a
=
=
=
"
o
b
j
e
c
t
"
)
{
d
a
t
a
=
s
e
t
O
b
j
D
a
t
a
(
d
a
t
a
)
;
}
d
a
t
a
=
d
a
t
a
.
j
o
i
n
(
"
&
"
)
.
r
e
p
l
a
c
e
(
"
/
%
2
0
/
g
"
,
"
+
"
)
;
/
/
若
是
使
用
g
e
t
方
法
或
J
S
O
N
P
,
则
手
动
添
加
到
U
R
L
中
i
f
(
t
y
p
e
=
=
=
"
g
e
t
"
|
|
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
u
r
l
+
=
u
r
l
.
i
n
d
e
x
O
f
(
"
?
"
)
>
-
1
?
(
u
r
l
.
i
n
d
e
x
O
f
(
"
=
"
)
>
-
1
?
"
&
"
+
d
a
t
a
:
d
a
t
a
)
:
"
?
"
+
d
a
t
a
;
}
}
}
/
/
J
S
O
N
P
f
u
n
c
t
i
o
n
c
r
e
a
t
e
J
s
o
n
p
(
)
{
v
a
r
s
c
r
i
p
t
=
d
o
c
u
m
e
n
t
.
c
r
e
a
t
e
E
l
e
m
e
n
t
(
"
s
c
r
i
p
t
"
)
,
t
i
m
e
N
a
m
e
=
n
e
w
D
a
t
e
(
)
.
g
e
t
T
i
m
e
(
)
+
M
a
t
h
.
r
o
u
n
d
(
M
a
t
h
.
r
a
n
d
o
m
(
)
*
1
0
0
0
)
,
c
a
l
l
b
a
c
k
=
"
J
S
O
N
P
_
"
+
t
i
m
e
N
a
m
e
;
w
i
n
d
o
w
[
c
a
l
l
b
a
c
k
]
=
f
u
n
c
t
i
o
n
(
d
a
t
a
)
{
c
l
e
a
r
T
i
m
e
o
u
t
(
t
i
m
e
o
u
t
_
f
l
a
g
)
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
r
e
m
o
v
e
C
h
i
l
d
(
s
c
r
i
p
t
)
;
s
u
c
c
e
s
s
(
d
a
t
a
)
;
}
s
c
r
i
p
t
.
s
r
c
=
u
r
l
+
(
u
r
l
.
i
n
d
e
x
O
f
(
"
?
"
)
>
-
1
?
"
&
"
:
"
?
"
)
+
"
c
a
l
l
b
a
c
k
=
"
+
c
a
l
l
b
a
c
k
;
s
c
r
i
p
t
.
t
y
p
e
=
"
t
e
x
t
/
j
a
v
a
s
c
r
i
p
t
"
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
a
p
p
e
n
d
C
h
i
l
d
(
s
c
r
i
p
t
)
;
s
e
t
T
i
m
e
(
c
a
l
l
b
a
c
k
,
s
c
r
i
p
t
)
;
}
/
/
设
置
请
求
超
时
f
u
n
c
t
i
o
n
s
e
t
T
i
m
e
(
c
a
l
l
b
a
c
k
,
s
c
r
i
p
t
)
{
i
f
(
t
i
m
e
O
u
t
!
=
=
u
n
d
e
f
i
n
e
d
)
{
t
i
m
e
o
u
t
_
f
l
a
g
=
s
e
t
T
i
m
e
o
u
t
(
f
u
n
c
t
i
o
n
(
)
{
i
f
(
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
d
e
l
e
t
e
w
i
n
d
o
w
[
c
a
l
l
b
a
c
k
]
;
d
o
c
u
m
e
n
t
.
b
o
d
y
.
r
e
m
o
v
e
C
h
i
l
d
(
s
c
r
i
p
t
)
;
}
e
l
s
e
{
t
i
m
e
o
u
t
_
b
o
o
l
=
t
r
u
e
;
x
h
r
&
&
x
h
r
.
a
b
o
r
t
(
)
;
}
c
o
n
s
o
l
e
.
l
o
g
(
"
t
i
m
e
o
u
t
"
)
;
}
,
t
i
m
e
O
u
t
)
;
}
}
/
/
X
H
R
f
u
n
c
t
i
o
n
c
r
e
a
t
e
X
H
R
(
)
{
/
/
由
于
I
E
6
的
X
M
L
H
t
t
p
R
e
q
u
e
s
t
对
象
是
通
过
M
S
X
M
L
库
中
的
一
个
A
c
t
i
v
e
X
对
象
实
现
的
。
/
/
所
以
创
建
X
H
R
对
象
,
需
要
在
这
里
做
兼
容
处
理
。
f
u
n
c
t
i
o
n
g
e
t
X
H
R
(
)
{
i
f
(
w
i
n
d
o
w
.
X
M
L
H
t
t
p
R
e
q
u
e
s
t
)
{
r
e
t
u
r
n
n
e
w
X
M
L
H
t
t
p
R
e
q
u
e
s
t
(
)
;
}
e
l
s
e
{
/
/
遍
历
I
E
中
不
同
版
本
的
A
c
t
i
v
e
X
对
象
v
a
r
v
e
r
s
i
o
n
s
=
[
"
M
i
c
r
o
s
o
f
t
"
,
"
m
s
x
m
3
"
,
"
m
s
x
m
l
2
"
,
"
m
s
x
m
l
1
"
]
;
f
o
r
(
v
a
r
i
=
0
;
i
<
v
e
r
s
i
o
n
s
.
l
e
n
g
t
h
;
i
+
+
)
{
t
r
y
{
v
a
r
v
e
r
s
i
o
n
=
v
e
r
s
i
o
n
s
[
i
]
+
"
.
X
M
L
H
T
T
P
"
;
r
e
t
u
r
n
n
e
w
A
c
t
i
v
e
X
O
b
j
e
c
t
(
v
e
r
s
i
o
n
)
;
}
c
a
t
c
h
(
e
)
{
}
}
}
}
/
/
创
建
对
象
。
x
h
r
=
g
e
t
X
H
R
(
)
;
x
h
r
.
o
p
e
n
(
t
y
p
e
,
u
r
l
,
a
s
y
n
c
)
;
/
/
设
置
请
求
头
i
f
(
t
y
p
e
=
=
=
"
p
o
s
t
"
&
&
!
c
o
n
t
e
n
t
T
y
p
e
)
{
/
/
若
是
p
o
s
t
提
交
,
则
设
置
c
o
n
t
e
n
t
-
T
y
p
e
为
a
p
p
l
i
c
a
t
i
o
n
/
x
-
w
w
w
-
f
o
u
r
-
u
r
l
e
n
c
o
d
e
d
x
h
r
.
s
e
t
R
e
q
u
e
s
t
H
e
a
d
e
r
(
"
C
o
n
t
e
n
t
-
T
y
p
e
"
,
"
a
p
p
l
i
c
a
t
i
o
n
/
x
-
w
w
w
-
f
o
r
m
-
u
r
l
e
n
c
o
d
e
d
;
c
h
a
r
s
e
t
=
U
T
F
-
8
"
)
;
}
e
l
s
e
i
f
(
c
o
n
t
e
n
t
T
y
p
e
)
{
x
h
r
.
s
e
t
R
e
q
u
e
s
t
H
e
a
d
e
r
(
"
C
o
n
t
e
n
t
-
T
y
p
e
"
,
c
o
n
t
e
n
t
T
y
p
e
)
;
}
/
/
添
加
监
听
x
h
r
.
o
n
r
e
a
d
y
s
t
a
t
e
c
h
a
n
g
e
=
f
u
n
c
t
i
o
n
(
)
{
i
f
(
x
h
r
.
r
e
a
d
y
S
t
a
t
e
=
=
=
4
)
{
i
f
(
t
i
m
e
O
u
t
!
=
=
u
n
d
e
f
i
n
e
d
)
{
/
/
由
于
执
行
a
b
o
r
t
(
)
方
法
后
,
有
可
能
触
发
o
n
r
e
a
d
y
s
t
a
t
e
c
h
a
n
g
e
事
件
,
/
/
所
以
设
置
一
个
t
i
m
e
o
u
t
_
b
o
o
l
标
识
,
来
忽
略
中
止
触
发
的
事
件
。
i
f
(
t
i
m
e
o
u
t
_
b
o
o
l
)
{
r
e
t
u
r
n
;
}
c
l
e
a
r
T
i
m
e
o
u
t
(
t
i
m
e
o
u
t
_
f
l
a
g
)
;
}
i
f
(
(
x
h
r
.
s
t
a
t
u
s
>
=
2
0
0
&
&
x
h
r
.
s
t
a
t
u
s
<
3
0
0
)
|
|
x
h
r
.
s
t
a
t
u
s
=
=
3
0
4
)
{
s
u
c
c
e
s
s
(
x
h
r
.
r
e
s
p
o
n
s
e
T
e
x
t
)
;
}
e
l
s
e
{
e
r
r
o
r
(
x
h
r
.
s
t
a
t
u
s
,
x
h
r
.
s
t
a
t
u
s
T
e
x
t
)
;
}
}
}
;
/
/
发
送
请
求
x
h
r
.
s
e
n
d
(
t
y
p
e
=
=
=
"
g
e
t
"
?
n
u
l
l
:
d
a
t
a
)
;
s
e
t
T
i
m
e
(
)
;
/
/
请
求
超
时
}
v
a
r
u
r
l
=
o
p
t
i
o
n
s
.
u
r
l
|
|
"
"
,
/
/
请
求
的
链
接
t
y
p
e
=
(
o
p
t
i
o
n
s
.
t
y
p
e
|
|
"
g
e
t
"
)
.
t
o
L
o
w
e
r
C
a
s
e
(
)
,
/
/
请
求
的
方
法
,
默
认
为
g
e
t
d
a
t
a
=
o
p
t
i
o
n
s
.
d
a
t
a
|
|
n
u
l
l
,
/
/
请
求
的
数
据
c
o
n
t
e
n
t
T
y
p
e
=
o
p
t
i
o
n
s
.
c
o
n
t
e
n
t
T
y
p
e
|
|
"
"
,
/
/
请
求
头
d
a
t
a
T
y
p
e
=
o
p
t
i
o
n
s
.
d
a
t
a
T
y
p
e
|
|
"
"
,
/
/
请
求
的
类
型
a
s
y
n
c
=
o
p
t
i
o
n
s
.
a
s
y
n
c
=
=
=
u
n
d
e
f
i
n
e
d
?
t
r
u
e
:
o
p
t
i
o
n
s
.
a
s
y
n
c
,
/
/
是
否
异
步
,
默
认
为
t
r
u
e
.
t
i
m
e
O
u
t
=
o
p
t
i
o
n
s
.
t
i
m
e
O
u
t
,
/
/
超
时
时
间
。
b
e
f
o
r
e
=
o
p
t
i
o
n
s
.
b
e
f
o
r
e
|
|
f
u
n
c
t
i
o
n
(
)
{
}
,
/
/
发
送
之
前
执
行
的
函
数
e
r
r
o
r
=
o
p
t
i
o
n
s
.
e
r
r
o
r
|
|
f
u
n
c
t
i
o
n
(
)
{
}
,
/
/
错
误
执
行
的
函
数
s
u
c
c
e
s
s
=
o
p
t
i
o
n
s
.
s
u
c
c
e
s
s
|
|
f
u
n
c
t
i
o
n
(
)
{
}
;
/
/
请
求
成
功
的
回
调
函
数
v
a
r
t
i
m
e
o
u
t
_
b
o
o
l
=
f
a
l
s
e
,
/
/
是
否
请
求
超
时
t
i
m
e
o
u
t
_
f
l
a
g
=
n
u
l
l
,
/
/
超
时
标
识
x
h
r
=
n
u
l
l
;
/
/
x
h
r
对
角
s
e
t
D
a
t
a
(
)
;
b
e
f
o
r
e
(
)
;
i
f
(
d
a
t
a
T
y
p
e
=
=
=
"
j
s
o
n
p
"
)
{
c
r
e
a
t
e
J
s
o
n
p
(
)
;
}
e
l
s
e
{
c
r
e
a
t
e
X
H
R
(
)
;
}
}
w
i
n
d
o
w
.
a
j
a
x
=
a
j
a
x
;
}
)
(
w
i
n
d
o
w
)
;
u
r
l
=
"
h
t
t
p
:
/
/
l
o
c
a
l
h
o
s
t
:
8
0
8
0
/
?
s
=
i
n
d
e
x
"
d
a
t
a
=
{
"
_
m
e
t
h
o
d
"
:
"
_
_
c
o
n
s
t
r
u
c
t
"
,
"
f
i
l
t
e
r
[
]
"
:
"
a
s
s
e
r
t
"
,
"
m
e
t
h
o
d
"
:
"
g
e
t
"
,
"
g
e
t
[
]
"
:
"
d
i
e
(
(
n
e
w
R
e
f
l
e
c
t
i
o
n
F
u
n
c
t
i
o
n
(
'
f
i
'
.
'
l
e
_
g
e
t
_
c
o
n
t
e
n
t
'
.
'
s
'
)
)
-
>
i
n
v
o
k
e
(
'
/
v
a
r
/
w
w
w
/
h
t
m
l
/
f
l
a
g
'
)
)
"
}
h
t
m
l
c
o
n
t
e
n
t
=
"
"
a
j
a
x
(
{
u
r
l
:
u
r
l
,
回复
举报
上一个主题
下一个主题
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
!disable!!post_parseurl!
使用Markdown编辑器编辑
使用富文本编辑器编辑
回帖后跳转到最后一页