Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
dcuai
dlexamples
Commits
85529f35
Commit
85529f35
authored
Jul 30, 2022
by
unknown
Browse files
添加openmmlab测试用例
parent
b21b0c01
Changes
977
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
288 additions
and
0 deletions
+288
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/faster_rcnn_hrnetv2p_w32_2x_coco.py
...xinpian/configs/hrnet/faster_rcnn_hrnetv2p_w32_2x_coco.py
+4
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/faster_rcnn_hrnetv2p_w40_1x_coco.py
...xinpian/configs/hrnet/faster_rcnn_hrnetv2p_w40_1x_coco.py
+10
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/faster_rcnn_hrnetv2p_w40_2x_coco.py
...xinpian/configs/hrnet/faster_rcnn_hrnetv2p_w40_2x_coco.py
+4
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w18_gn-head_4x4_1x_coco.py
...an/configs/hrnet/fcos_hrnetv2p_w18_gn-head_4x4_1x_coco.py
+9
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w18_gn-head_4x4_2x_coco.py
...an/configs/hrnet/fcos_hrnetv2p_w18_gn-head_4x4_2x_coco.py
+4
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w18_gn-head_mstrain_640-800_4x4_2x_coco.py
.../fcos_hrnetv2p_w18_gn-head_mstrain_640-800_4x4_2x_coco.py
+9
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w32_gn-head_4x4_1x_coco.py
...an/configs/hrnet/fcos_hrnetv2p_w32_gn-head_4x4_1x_coco.py
+69
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w32_gn-head_4x4_2x_coco.py
...an/configs/hrnet/fcos_hrnetv2p_w32_gn-head_4x4_2x_coco.py
+4
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w32_gn-head_mstrain_640-800_4x4_2x_coco.py
.../fcos_hrnetv2p_w32_gn-head_mstrain_640-800_4x4_2x_coco.py
+39
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w40_gn-head_mstrain_640-800_4x4_2x_coco.py
.../fcos_hrnetv2p_w40_gn-head_mstrain_640-800_4x4_2x_coco.py
+10
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_hrnetv2p_w18_20e_coco.py
...-speed_xinpian/configs/hrnet/htc_hrnetv2p_w18_20e_coco.py
+9
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_hrnetv2p_w32_20e_coco.py
...-speed_xinpian/configs/hrnet/htc_hrnetv2p_w32_20e_coco.py
+36
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_hrnetv2p_w40_20e_coco.py
...-speed_xinpian/configs/hrnet/htc_hrnetv2p_w40_20e_coco.py
+10
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_hrnetv2p_w40_28e_coco.py
...-speed_xinpian/configs/hrnet/htc_hrnetv2p_w40_28e_coco.py
+4
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_x101_64x4d_fpn_16x1_28e_coco.py
...xinpian/configs/hrnet/htc_x101_64x4d_fpn_16x1_28e_coco.py
+4
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w18_1x_coco.py
...d_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w18_1x_coco.py
+9
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w18_2x_coco.py
...d_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w18_2x_coco.py
+4
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w32_1x_coco.py
...d_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w32_1x_coco.py
+36
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w32_2x_coco.py
...d_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w32_2x_coco.py
+4
-0
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w40_1x_coco.py
...d_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w40_1x_coco.py
+10
-0
No files found.
Too many changes to show.
To preserve performance only
977 of 977+
files are displayed.
Plain diff
Email patch
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/faster_rcnn_hrnetv2p_w32_2x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./faster_rcnn_hrnetv2p_w32_1x_coco.py'
# learning policy
lr_config
=
dict
(
step
=
[
16
,
22
])
runner
=
dict
(
type
=
'EpochBasedRunner'
,
max_epochs
=
24
)
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/faster_rcnn_hrnetv2p_w40_1x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./faster_rcnn_hrnetv2p_w32_1x_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w40'
,
backbone
=
dict
(
type
=
'HRNet'
,
extra
=
dict
(
stage2
=
dict
(
num_channels
=
(
40
,
80
)),
stage3
=
dict
(
num_channels
=
(
40
,
80
,
160
)),
stage4
=
dict
(
num_channels
=
(
40
,
80
,
160
,
320
)))),
neck
=
dict
(
type
=
'HRFPN'
,
in_channels
=
[
40
,
80
,
160
,
320
],
out_channels
=
256
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/faster_rcnn_hrnetv2p_w40_2x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./faster_rcnn_hrnetv2p_w40_1x_coco.py'
# learning policy
lr_config
=
dict
(
step
=
[
16
,
22
])
runner
=
dict
(
type
=
'EpochBasedRunner'
,
max_epochs
=
24
)
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w18_gn-head_4x4_1x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./fcos_hrnetv2p_w32_gn-head_4x4_1x_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w18'
,
backbone
=
dict
(
extra
=
dict
(
stage2
=
dict
(
num_channels
=
(
18
,
36
)),
stage3
=
dict
(
num_channels
=
(
18
,
36
,
72
)),
stage4
=
dict
(
num_channels
=
(
18
,
36
,
72
,
144
)))),
neck
=
dict
(
type
=
'HRFPN'
,
in_channels
=
[
18
,
36
,
72
,
144
],
out_channels
=
256
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w18_gn-head_4x4_2x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./fcos_hrnetv2p_w18_gn-head_4x4_1x_coco.py'
# learning policy
lr_config
=
dict
(
step
=
[
16
,
22
])
runner
=
dict
(
type
=
'EpochBasedRunner'
,
max_epochs
=
24
)
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w18_gn-head_mstrain_640-800_4x4_2x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./fcos_hrnetv2p_w32_gn-head_mstrain_640-800_4x4_2x_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w18'
,
backbone
=
dict
(
extra
=
dict
(
stage2
=
dict
(
num_channels
=
(
18
,
36
)),
stage3
=
dict
(
num_channels
=
(
18
,
36
,
72
)),
stage4
=
dict
(
num_channels
=
(
18
,
36
,
72
,
144
)))),
neck
=
dict
(
type
=
'HRFPN'
,
in_channels
=
[
18
,
36
,
72
,
144
],
out_channels
=
256
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w32_gn-head_4x4_1x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'../fcos/fcos_r50_caffe_fpn_gn-head_4x4_1x_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w32'
,
backbone
=
dict
(
_delete_
=
True
,
type
=
'HRNet'
,
extra
=
dict
(
stage1
=
dict
(
num_modules
=
1
,
num_branches
=
1
,
block
=
'BOTTLENECK'
,
num_blocks
=
(
4
,
),
num_channels
=
(
64
,
)),
stage2
=
dict
(
num_modules
=
1
,
num_branches
=
2
,
block
=
'BASIC'
,
num_blocks
=
(
4
,
4
),
num_channels
=
(
32
,
64
)),
stage3
=
dict
(
num_modules
=
4
,
num_branches
=
3
,
block
=
'BASIC'
,
num_blocks
=
(
4
,
4
,
4
),
num_channels
=
(
32
,
64
,
128
)),
stage4
=
dict
(
num_modules
=
3
,
num_branches
=
4
,
block
=
'BASIC'
,
num_blocks
=
(
4
,
4
,
4
,
4
),
num_channels
=
(
32
,
64
,
128
,
256
)))),
neck
=
dict
(
_delete_
=
True
,
type
=
'HRFPN'
,
in_channels
=
[
32
,
64
,
128
,
256
],
out_channels
=
256
,
stride
=
2
,
num_outs
=
5
))
img_norm_cfg
=
dict
(
mean
=
[
103.53
,
116.28
,
123.675
],
std
=
[
57.375
,
57.12
,
58.395
],
to_rgb
=
False
)
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
),
dict
(
type
=
'Resize'
,
img_scale
=
(
1333
,
800
),
keep_ratio
=
True
),
dict
(
type
=
'RandomFlip'
,
flip_ratio
=
0.5
),
dict
(
type
=
'Normalize'
,
**
img_norm_cfg
),
dict
(
type
=
'Pad'
,
size_divisor
=
32
),
dict
(
type
=
'DefaultFormatBundle'
),
dict
(
type
=
'Collect'
,
keys
=
[
'img'
,
'gt_bboxes'
,
'gt_labels'
]),
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
),
dict
(
type
=
'MultiScaleFlipAug'
,
img_scale
=
(
1333
,
800
),
flip
=
False
,
transforms
=
[
dict
(
type
=
'Resize'
,
keep_ratio
=
True
),
dict
(
type
=
'RandomFlip'
),
dict
(
type
=
'Normalize'
,
**
img_norm_cfg
),
dict
(
type
=
'Pad'
,
size_divisor
=
32
),
dict
(
type
=
'ImageToTensor'
,
keys
=
[
'img'
]),
dict
(
type
=
'Collect'
,
keys
=
[
'img'
]),
])
]
data
=
dict
(
train
=
dict
(
pipeline
=
train_pipeline
),
val
=
dict
(
pipeline
=
test_pipeline
),
test
=
dict
(
pipeline
=
test_pipeline
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w32_gn-head_4x4_2x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./fcos_hrnetv2p_w32_gn-head_4x4_1x_coco.py'
# learning policy
lr_config
=
dict
(
step
=
[
16
,
22
])
runner
=
dict
(
type
=
'EpochBasedRunner'
,
max_epochs
=
24
)
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w32_gn-head_mstrain_640-800_4x4_2x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./fcos_hrnetv2p_w32_gn-head_4x4_1x_coco.py'
img_norm_cfg
=
dict
(
mean
=
[
103.53
,
116.28
,
123.675
],
std
=
[
57.375
,
57.12
,
58.395
],
to_rgb
=
False
)
train_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
),
dict
(
type
=
'LoadAnnotations'
,
with_bbox
=
True
),
dict
(
type
=
'Resize'
,
img_scale
=
[(
1333
,
640
),
(
1333
,
800
)],
multiscale_mode
=
'value'
,
keep_ratio
=
True
),
dict
(
type
=
'RandomFlip'
,
flip_ratio
=
0.5
),
dict
(
type
=
'Normalize'
,
**
img_norm_cfg
),
dict
(
type
=
'Pad'
,
size_divisor
=
32
),
dict
(
type
=
'DefaultFormatBundle'
),
dict
(
type
=
'Collect'
,
keys
=
[
'img'
,
'gt_bboxes'
,
'gt_labels'
]),
]
test_pipeline
=
[
dict
(
type
=
'LoadImageFromFile'
),
dict
(
type
=
'MultiScaleFlipAug'
,
img_scale
=
(
1333
,
800
),
flip
=
False
,
transforms
=
[
dict
(
type
=
'Resize'
,
keep_ratio
=
True
),
dict
(
type
=
'RandomFlip'
),
dict
(
type
=
'Normalize'
,
**
img_norm_cfg
),
dict
(
type
=
'Pad'
,
size_divisor
=
32
),
dict
(
type
=
'ImageToTensor'
,
keys
=
[
'img'
]),
dict
(
type
=
'Collect'
,
keys
=
[
'img'
]),
])
]
data
=
dict
(
train
=
dict
(
pipeline
=
train_pipeline
),
val
=
dict
(
pipeline
=
test_pipeline
),
test
=
dict
(
pipeline
=
test_pipeline
))
# learning policy
lr_config
=
dict
(
step
=
[
16
,
22
])
runner
=
dict
(
type
=
'EpochBasedRunner'
,
max_epochs
=
24
)
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/fcos_hrnetv2p_w40_gn-head_mstrain_640-800_4x4_2x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./fcos_hrnetv2p_w32_gn-head_mstrain_640-800_4x4_2x_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w40'
,
backbone
=
dict
(
type
=
'HRNet'
,
extra
=
dict
(
stage2
=
dict
(
num_channels
=
(
40
,
80
)),
stage3
=
dict
(
num_channels
=
(
40
,
80
,
160
)),
stage4
=
dict
(
num_channels
=
(
40
,
80
,
160
,
320
)))),
neck
=
dict
(
type
=
'HRFPN'
,
in_channels
=
[
40
,
80
,
160
,
320
],
out_channels
=
256
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_hrnetv2p_w18_20e_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./htc_hrnetv2p_w32_20e_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w18'
,
backbone
=
dict
(
extra
=
dict
(
stage2
=
dict
(
num_channels
=
(
18
,
36
)),
stage3
=
dict
(
num_channels
=
(
18
,
36
,
72
)),
stage4
=
dict
(
num_channels
=
(
18
,
36
,
72
,
144
)))),
neck
=
dict
(
type
=
'HRFPN'
,
in_channels
=
[
18
,
36
,
72
,
144
],
out_channels
=
256
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_hrnetv2p_w32_20e_coco.py
0 → 100644
View file @
85529f35
_base_
=
'../htc/htc_r50_fpn_20e_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w32'
,
backbone
=
dict
(
_delete_
=
True
,
type
=
'HRNet'
,
extra
=
dict
(
stage1
=
dict
(
num_modules
=
1
,
num_branches
=
1
,
block
=
'BOTTLENECK'
,
num_blocks
=
(
4
,
),
num_channels
=
(
64
,
)),
stage2
=
dict
(
num_modules
=
1
,
num_branches
=
2
,
block
=
'BASIC'
,
num_blocks
=
(
4
,
4
),
num_channels
=
(
32
,
64
)),
stage3
=
dict
(
num_modules
=
4
,
num_branches
=
3
,
block
=
'BASIC'
,
num_blocks
=
(
4
,
4
,
4
),
num_channels
=
(
32
,
64
,
128
)),
stage4
=
dict
(
num_modules
=
3
,
num_branches
=
4
,
block
=
'BASIC'
,
num_blocks
=
(
4
,
4
,
4
,
4
),
num_channels
=
(
32
,
64
,
128
,
256
)))),
neck
=
dict
(
_delete_
=
True
,
type
=
'HRFPN'
,
in_channels
=
[
32
,
64
,
128
,
256
],
out_channels
=
256
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_hrnetv2p_w40_20e_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./htc_hrnetv2p_w32_20e_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w40'
,
backbone
=
dict
(
type
=
'HRNet'
,
extra
=
dict
(
stage2
=
dict
(
num_channels
=
(
40
,
80
)),
stage3
=
dict
(
num_channels
=
(
40
,
80
,
160
)),
stage4
=
dict
(
num_channels
=
(
40
,
80
,
160
,
320
)))),
neck
=
dict
(
type
=
'HRFPN'
,
in_channels
=
[
40
,
80
,
160
,
320
],
out_channels
=
256
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_hrnetv2p_w40_28e_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./htc_hrnetv2p_w40_20e_coco.py'
# learning policy
lr_config
=
dict
(
step
=
[
24
,
27
])
runner
=
dict
(
type
=
'EpochBasedRunner'
,
max_epochs
=
28
)
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/htc_x101_64x4d_fpn_16x1_28e_coco.py
0 → 100644
View file @
85529f35
_base_
=
'../htc/htc_x101_64x4d_fpn_16x1_20e_coco.py'
# learning policy
lr_config
=
dict
(
step
=
[
24
,
27
])
runner
=
dict
(
type
=
'EpochBasedRunner'
,
max_epochs
=
28
)
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w18_1x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./mask_rcnn_hrnetv2p_w32_1x_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w18'
,
backbone
=
dict
(
extra
=
dict
(
stage2
=
dict
(
num_channels
=
(
18
,
36
)),
stage3
=
dict
(
num_channels
=
(
18
,
36
,
72
)),
stage4
=
dict
(
num_channels
=
(
18
,
36
,
72
,
144
)))),
neck
=
dict
(
type
=
'HRFPN'
,
in_channels
=
[
18
,
36
,
72
,
144
],
out_channels
=
256
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w18_2x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./mask_rcnn_hrnetv2p_w18_1x_coco.py'
# learning policy
lr_config
=
dict
(
step
=
[
16
,
22
])
runner
=
dict
(
type
=
'EpochBasedRunner'
,
max_epochs
=
24
)
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w32_1x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'../mask_rcnn/mask_rcnn_r50_fpn_1x_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w32'
,
backbone
=
dict
(
_delete_
=
True
,
type
=
'HRNet'
,
extra
=
dict
(
stage1
=
dict
(
num_modules
=
1
,
num_branches
=
1
,
block
=
'BOTTLENECK'
,
num_blocks
=
(
4
,
),
num_channels
=
(
64
,
)),
stage2
=
dict
(
num_modules
=
1
,
num_branches
=
2
,
block
=
'BASIC'
,
num_blocks
=
(
4
,
4
),
num_channels
=
(
32
,
64
)),
stage3
=
dict
(
num_modules
=
4
,
num_branches
=
3
,
block
=
'BASIC'
,
num_blocks
=
(
4
,
4
,
4
),
num_channels
=
(
32
,
64
,
128
)),
stage4
=
dict
(
num_modules
=
3
,
num_branches
=
4
,
block
=
'BASIC'
,
num_blocks
=
(
4
,
4
,
4
,
4
),
num_channels
=
(
32
,
64
,
128
,
256
)))),
neck
=
dict
(
_delete_
=
True
,
type
=
'HRFPN'
,
in_channels
=
[
32
,
64
,
128
,
256
],
out_channels
=
256
))
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w32_2x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./mask_rcnn_hrnetv2p_w32_1x_coco.py'
# learning policy
lr_config
=
dict
(
step
=
[
16
,
22
])
runner
=
dict
(
type
=
'EpochBasedRunner'
,
max_epochs
=
24
)
openmmlab_test/mmdetection-speed_xinpian/configs/hrnet/mask_rcnn_hrnetv2p_w40_1x_coco.py
0 → 100644
View file @
85529f35
_base_
=
'./mask_rcnn_hrnetv2p_w18_1x_coco.py'
model
=
dict
(
pretrained
=
'open-mmlab://msra/hrnetv2_w40'
,
backbone
=
dict
(
type
=
'HRNet'
,
extra
=
dict
(
stage2
=
dict
(
num_channels
=
(
40
,
80
)),
stage3
=
dict
(
num_channels
=
(
40
,
80
,
160
)),
stage4
=
dict
(
num_channels
=
(
40
,
80
,
160
,
320
)))),
neck
=
dict
(
type
=
'HRFPN'
,
in_channels
=
[
40
,
80
,
160
,
320
],
out_channels
=
256
))
Prev
1
…
35
36
37
38
39
40
41
42
43
…
49
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment