Advertisement
uopspop

Untitled

Nov 4th, 2018
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 23.14 KB | None | 0 0
  1. {
  2. "AWSTemplateFormatVersion": "2010-09-09",
  3. "Parameters": {
  4. "KeyPairName": {
  5. "Description": "You must have your public key on your aws - ec2 - network & security - key pairs section",
  6. "Type": "String"
  7. }
  8. },
  9. "Resources": {
  10. "vpcd3adf3aa": {
  11. "Type": "AWS::EC2::VPC",
  12. "Properties": {
  13. "CidrBlock": "10.99.0.0/16",
  14. "InstanceTenancy": "default",
  15. "EnableDnsSupport": "true",
  16. "EnableDnsHostnames": "false",
  17. "Tags": [
  18. {
  19. "Key": "Name",
  20. "Value": "st-cloudformation"
  21. }
  22. ]
  23. },
  24. "Metadata": {
  25. "AWS::CloudFormation::Designer": {
  26. "id": "100906b8-589d-45d3-9633-4eb9e44ddbaf"
  27. }
  28. }
  29. },
  30. "subnet1b9e3a50": {
  31. "Type": "AWS::EC2::Subnet",
  32. "Properties": {
  33. "CidrBlock": "10.99.0.0/24",
  34. "AvailabilityZone": "us-west-2b",
  35. "VpcId": {
  36. "Ref": "vpcd3adf3aa"
  37. },
  38. "Tags": [
  39. {
  40. "Key": "Name",
  41. "Value": "st-cloudformation"
  42. }
  43. ]
  44. },
  45. "Metadata": {
  46. "AWS::CloudFormation::Designer": {
  47. "id": "80af6f4c-1d4d-4f66-8237-11fbaa5d8061"
  48. }
  49. }
  50. },
  51. "igw14057072": {
  52. "Type": "AWS::EC2::InternetGateway",
  53. "Properties": {
  54. "Tags": [
  55. {
  56. "Key": "Name",
  57. "Value": "st-cloudformation"
  58. }
  59. ]
  60. },
  61. "Metadata": {
  62. "AWS::CloudFormation::Designer": {
  63. "id": "6c215780-cc5d-4f7c-9029-f833506b0ab6"
  64. }
  65. }
  66. },
  67. "acl80f553f8": {
  68. "Type": "AWS::EC2::NetworkAcl",
  69. "Properties": {
  70. "VpcId": {
  71. "Ref": "vpcd3adf3aa"
  72. },
  73. "Tags": [
  74. {
  75. "Key": "Name",
  76. "Value": "st-cloudformation"
  77. }
  78. ]
  79. },
  80. "Metadata": {
  81. "AWS::CloudFormation::Designer": {
  82. "id": "cda52d9d-e7bd-468e-91d9-d51ffa33abd1"
  83. }
  84. }
  85. },
  86. "rtb41104239": {
  87. "Type": "AWS::EC2::RouteTable",
  88. "Properties": {
  89. "VpcId": {
  90. "Ref": "vpcd3adf3aa"
  91. },
  92. "Tags": [
  93. {
  94. "Key": "Name",
  95. "Value": "st-cloudformation-public"
  96. }
  97. ]
  98. },
  99. "Metadata": {
  100. "AWS::CloudFormation::Designer": {
  101. "id": "c93e3089-9729-4403-b730-6737ff99ad2a"
  102. }
  103. }
  104. },
  105. "instancei012c21b7d8e198887": {
  106. "Type": "AWS::EC2::Instance",
  107. "Properties": {
  108. "DisableApiTermination": "false",
  109. "InstanceInitiatedShutdownBehavior": "stop",
  110. "ImageId": "ami-223f945a",
  111. "InstanceType": "t2.micro",
  112. "KeyName": {
  113. "Ref": "KeyPairName"
  114. },
  115. "UserData": { "Fn::Base64" : { "Fn::Join" : ["", [
  116. "#!/bin/bash\n",
  117. "cd /home/ec2-user/\n",
  118. "sudo yum remove docker docker-common container-selinux docker-selinux docker-engine docker-engine-selinux\n",
  119. "sudo yum install -y yum-utils device-mapper-persistent-data lvm2\n",
  120. "sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo\n",
  121. "sudo yum makecache fast\n",
  122. "sudo yum install -y http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.66-1.el7.noarch.rpm \n",
  123. "sudo yum install -y docker-ce\n",
  124. "sudo systemctl start docker\n",
  125. "sudo docker run hello-world\n",
  126. "sudo yum update -y\n",
  127. "sudo yum install yum-utils -y\n",
  128. "sudo yum groupinstall development -y\n",
  129. "sudo yum install wget -y\n",
  130. "sudo wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm \n",
  131. "sudo yum install epel-release-latest-7.noarch.rpm -y\n",
  132. "sudo yum install https://centos7.iuscommunity.org/ius-release.rpm -y\n",
  133. "sudo yum install python36u -y\n",
  134. "python3.6 -V\n",
  135. "sudo yum install python36u-pip -y\n",
  136. "sudo yum install python36u-devel -y\n",
  137. "sudo python3.6 -m venv venv\n",
  138. "sudo bash\n",
  139. "source venv/bin/activate\n",
  140. "pip install --upgrade pip\n",
  141. "pip install --upgrade setuptools\n",
  142. "pip install --upgrade aws-sam-cli\n",
  143. "python --version\n",
  144. "pip --version\n",
  145. "pip install --user aws-sam-cli\n",
  146. "USER_BASE_PATH=$(python -m site --user-base)\n",
  147. "echo $USER_BASE_PATH\n",
  148. "export PATH=$PATH:$USER_BASE_PATH/bin\n",
  149. "echo 'export PATH=$PATH:$USER_BASE_PATH/bin' >>~/.bash_profile\n",
  150. "echo $PATH\n",
  151. "exec $SHELL\n",
  152. "sam --version"
  153. ]]}},
  154. "Monitoring": "false",
  155. "Tags": [
  156. {
  157. "Key": "Name",
  158. "Value": "st-cloudformation"
  159. }
  160. ],
  161. "NetworkInterfaces": [
  162. {
  163. "DeleteOnTermination": "true",
  164. "Description": "Primary network interface",
  165. "DeviceIndex": 0,
  166. "SubnetId": {
  167. "Ref": "subnet1b9e3a50"
  168. },
  169. "PrivateIpAddresses": [
  170. {
  171. "PrivateIpAddress": "10.99.0.151",
  172. "Primary": "true"
  173. }
  174. ],
  175. "GroupSet": [
  176. {
  177. "Ref": "sgstcloudformation"
  178. }
  179. ],
  180. "AssociatePublicIpAddress": "true"
  181. }
  182. ]
  183. },
  184. "Metadata": {
  185. "AWS::CloudFormation::Designer": {
  186. "id": "5467a301-e1f2-4320-93d1-c8c93b84306f"
  187. }
  188. }
  189. },
  190. "sgstcloudformation": {
  191. "Type": "AWS::EC2::SecurityGroup",
  192. "Properties": {
  193. "GroupDescription": "launch-wizard-37 created 2018-04-17T19:55:21.240+08:00",
  194. "VpcId": {
  195. "Ref": "vpcd3adf3aa"
  196. },
  197. "Tags": [
  198. {
  199. "Key": "Name",
  200. "Value": "st-cloudformation"
  201. }
  202. ]
  203. },
  204. "Metadata": {
  205. "AWS::CloudFormation::Designer": {
  206. "id": "c8ac8be7-0b4a-4496-a8d3-1a54e2e42d5a"
  207. }
  208. }
  209. },
  210. "acl1": {
  211. "Type": "AWS::EC2::NetworkAclEntry",
  212. "Properties": {
  213. "CidrBlock": "0.0.0.0/0",
  214. "Egress": "true",
  215. "Protocol": "-1",
  216. "RuleAction": "allow",
  217. "RuleNumber": "100",
  218. "NetworkAclId": {
  219. "Ref": "acl80f553f8"
  220. }
  221. },
  222. "Metadata": {
  223. "AWS::CloudFormation::Designer": {
  224. "id": "811c3c9c-8e1d-413a-b908-22829b94aa85"
  225. }
  226. }
  227. },
  228. "acl2": {
  229. "Type": "AWS::EC2::NetworkAclEntry",
  230. "Properties": {
  231. "CidrBlock": "0.0.0.0/0",
  232. "Protocol": "-1",
  233. "RuleAction": "allow",
  234. "RuleNumber": "100",
  235. "NetworkAclId": {
  236. "Ref": "acl80f553f8"
  237. }
  238. },
  239. "Metadata": {
  240. "AWS::CloudFormation::Designer": {
  241. "id": "1b8e9c00-552b-421b-bbd6-3d8773821d7e"
  242. }
  243. }
  244. },
  245. "subnetacl1": {
  246. "Type": "AWS::EC2::SubnetNetworkAclAssociation",
  247. "Properties": {
  248. "NetworkAclId": {
  249. "Ref": "acl80f553f8"
  250. },
  251. "SubnetId": {
  252. "Ref": "subnet1b9e3a50"
  253. }
  254. },
  255. "Metadata": {
  256. "AWS::CloudFormation::Designer": {
  257. "id": "455b97eb-821c-4699-a909-5fd0b44cabbd"
  258. }
  259. }
  260. },
  261. "route1": {
  262. "Type": "AWS::EC2::Route",
  263. "Properties": {
  264. "DestinationCidrBlock": "0.0.0.0/0",
  265. "RouteTableId": {
  266. "Ref": "rtb41104239"
  267. },
  268. "GatewayId": {
  269. "Ref": "igw14057072"
  270. }
  271. },
  272. "Metadata": {
  273. "AWS::CloudFormation::Designer": {
  274. "id": "0b13684f-bf67-44c6-a0ce-d788f1544e49"
  275. }
  276. }
  277. },
  278. "SubnetRouteTableAssociation008": {
  279. "Type": "AWS::EC2::SubnetRouteTableAssociation",
  280. "Properties": {
  281. "RouteTableId": {
  282. "Ref": "rtb41104239"
  283. },
  284. "SubnetId": {
  285. "Ref": "subnet1b9e3a50"
  286. }
  287. },
  288. "Metadata": {
  289. "AWS::CloudFormation::Designer": {
  290. "id": "8db514ed-7e5f-42db-868e-e430d15b5bb8"
  291. }
  292. }
  293. },
  294. "ingress1": {
  295. "Type": "AWS::EC2::SecurityGroupIngress",
  296. "Properties": {
  297. "GroupId": {
  298. "Ref": "sgstcloudformation"
  299. },
  300. "IpProtocol": "tcp",
  301. "FromPort": "22",
  302. "ToPort": "22",
  303. "CidrIp": "0.0.0.0/0"
  304. }
  305. },
  306. "ingress2": {
  307. "Type": "AWS::EC2::SecurityGroupIngress",
  308. "Properties": {
  309. "GroupId": {
  310. "Ref": "sgstcloudformation"
  311. },
  312. "IpProtocol": "tcp",
  313. "FromPort": "8080",
  314. "ToPort": "8080",
  315. "CidrIp": "0.0.0.0/0"
  316. }
  317. },
  318. "egress1": {
  319. "Type": "AWS::EC2::SecurityGroupEgress",
  320. "Properties": {
  321. "GroupId": {
  322. "Ref": "sgstcloudformation"
  323. },
  324. "IpProtocol": "-1",
  325. "CidrIp": "0.0.0.0/0"
  326. }
  327. },
  328. "EC2DHCP2HAZ9": {
  329. "Type": "AWS::EC2::DHCPOptions",
  330. "Properties": {
  331. "DomainName": "us-west-2.compute.internal",
  332. "DomainNameServers": [
  333. "AmazonProvidedDNS"
  334. ]
  335. },
  336. "Metadata": {
  337. "AWS::CloudFormation::Designer": {
  338. "id": "1f2155f4-d323-494e-b157-1e0a8c2f338c"
  339. }
  340. }
  341. },
  342. "EC2VPCD1WN10": {
  343. "Type": "AWS::EC2::VPCDHCPOptionsAssociation",
  344. "Properties": {
  345. "DhcpOptionsId": {
  346. "Ref": "EC2DHCP2HAZ9"
  347. },
  348. "VpcId": {
  349. "Ref": "vpcd3adf3aa"
  350. }
  351. },
  352. "Metadata": {
  353. "AWS::CloudFormation::Designer": {
  354. "id": "4e13c20d-0335-44e7-a6f4-d8a27ee8642c"
  355. }
  356. }
  357. },
  358. "EC2VPCG4ESOD": {
  359. "Type": "AWS::EC2::VPCGatewayAttachment",
  360. "Properties": {
  361. "VpcId": {
  362. "Ref": "vpcd3adf3aa"
  363. },
  364. "InternetGatewayId": {
  365. "Ref": "igw14057072"
  366. }
  367. },
  368. "Metadata": {
  369. "AWS::CloudFormation::Designer": {
  370. "id": "16e7a5e4-f13b-4591-b6c8-3722c22f229f"
  371. }
  372. }
  373. }
  374. },
  375. "Description": "st-formation",
  376. "Metadata": {
  377. "AWS::CloudFormation::Designer": {
  378. "6c215780-cc5d-4f7c-9029-f833506b0ab6": {
  379. "size": {
  380. "width": 60,
  381. "height": 60
  382. },
  383. "position": {
  384. "x": -130,
  385. "y": 240
  386. },
  387. "z": 0,
  388. "embeds": []
  389. },
  390. "100906b8-589d-45d3-9633-4eb9e44ddbaf": {
  391. "size": {
  392. "width": 690,
  393. "height": 690
  394. },
  395. "position": {
  396. "x": -10,
  397. "y": 80
  398. },
  399. "z": 1,
  400. "embeds": [
  401. "c93e3089-9729-4403-b730-6737ff99ad2a",
  402. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061",
  403. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1"
  404. ]
  405. },
  406. "c8ac8be7-0b4a-4496-a8d3-1a54e2e42d5a": {
  407. "size": {
  408. "width": 60,
  409. "height": 60
  410. },
  411. "position": {
  412. "x": -130,
  413. "y": 540
  414. },
  415. "z": 0,
  416. "embeds": [],
  417. "iscontainedinside": [
  418. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  419. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  420. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  421. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  422. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  423. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  424. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  425. "100906b8-589d-45d3-9633-4eb9e44ddbaf"
  426. ]
  427. },
  428. "c93e3089-9729-4403-b730-6737ff99ad2a": {
  429. "size": {
  430. "width": 240,
  431. "height": 240
  432. },
  433. "position": {
  434. "x": 400,
  435. "y": 160
  436. },
  437. "z": 2,
  438. "parent": "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  439. "embeds": [
  440. "0b13684f-bf67-44c6-a0ce-d788f1544e49"
  441. ],
  442. "iscontainedinside": [
  443. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  444. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  445. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  446. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  447. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  448. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  449. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  450. "100906b8-589d-45d3-9633-4eb9e44ddbaf"
  451. ]
  452. },
  453. "0b13684f-bf67-44c6-a0ce-d788f1544e49": {
  454. "size": {
  455. "width": 60,
  456. "height": 60
  457. },
  458. "position": {
  459. "x": 520,
  460. "y": 170
  461. },
  462. "z": 3,
  463. "parent": "c93e3089-9729-4403-b730-6737ff99ad2a",
  464. "embeds": [],
  465. "isassociatedwith": [
  466. "6c215780-cc5d-4f7c-9029-f833506b0ab6"
  467. ],
  468. "iscontainedinside": [
  469. "c93e3089-9729-4403-b730-6737ff99ad2a",
  470. "c93e3089-9729-4403-b730-6737ff99ad2a",
  471. "c93e3089-9729-4403-b730-6737ff99ad2a",
  472. "c93e3089-9729-4403-b730-6737ff99ad2a",
  473. "c93e3089-9729-4403-b730-6737ff99ad2a",
  474. "c93e3089-9729-4403-b730-6737ff99ad2a",
  475. "c93e3089-9729-4403-b730-6737ff99ad2a",
  476. "c93e3089-9729-4403-b730-6737ff99ad2a"
  477. ]
  478. },
  479. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1": {
  480. "size": {
  481. "width": 330,
  482. "height": 240
  483. },
  484. "position": {
  485. "x": 40,
  486. "y": 150
  487. },
  488. "z": 2,
  489. "parent": "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  490. "embeds": [
  491. "1b8e9c00-552b-421b-bbd6-3d8773821d7e",
  492. "811c3c9c-8e1d-413a-b908-22829b94aa85"
  493. ],
  494. "iscontainedinside": [
  495. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  496. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  497. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  498. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  499. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  500. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  501. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  502. "100906b8-589d-45d3-9633-4eb9e44ddbaf"
  503. ]
  504. },
  505. "1b8e9c00-552b-421b-bbd6-3d8773821d7e": {
  506. "size": {
  507. "width": 60,
  508. "height": 60
  509. },
  510. "position": {
  511. "x": 70,
  512. "y": 210
  513. },
  514. "z": 3,
  515. "parent": "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  516. "embeds": [],
  517. "iscontainedinside": [
  518. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  519. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  520. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  521. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  522. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  523. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  524. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  525. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1"
  526. ]
  527. },
  528. "811c3c9c-8e1d-413a-b908-22829b94aa85": {
  529. "size": {
  530. "width": 60,
  531. "height": 60
  532. },
  533. "position": {
  534. "x": 190,
  535. "y": 210
  536. },
  537. "z": 3,
  538. "parent": "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  539. "embeds": [],
  540. "iscontainedinside": [
  541. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  542. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  543. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  544. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  545. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  546. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  547. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1",
  548. "cda52d9d-e7bd-468e-91d9-d51ffa33abd1"
  549. ]
  550. },
  551. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061": {
  552. "size": {
  553. "width": 240,
  554. "height": 240
  555. },
  556. "position": {
  557. "x": 40,
  558. "y": 500
  559. },
  560. "z": 2,
  561. "parent": "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  562. "embeds": [
  563. "5467a301-e1f2-4320-93d1-c8c93b84306f"
  564. ],
  565. "iscontainedinside": [
  566. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  567. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  568. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  569. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  570. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  571. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  572. "100906b8-589d-45d3-9633-4eb9e44ddbaf",
  573. "100906b8-589d-45d3-9633-4eb9e44ddbaf"
  574. ]
  575. },
  576. "8db514ed-7e5f-42db-868e-e430d15b5bb8": {
  577. "source": {
  578. "id": "c93e3089-9729-4403-b730-6737ff99ad2a"
  579. },
  580. "target": {
  581. "id": "80af6f4c-1d4d-4f66-8237-11fbaa5d8061"
  582. },
  583. "z": 2
  584. },
  585. "455b97eb-821c-4699-a909-5fd0b44cabbd": {
  586. "source": {
  587. "id": "cda52d9d-e7bd-468e-91d9-d51ffa33abd1"
  588. },
  589. "target": {
  590. "id": "80af6f4c-1d4d-4f66-8237-11fbaa5d8061"
  591. },
  592. "z": 2
  593. },
  594. "5467a301-e1f2-4320-93d1-c8c93b84306f": {
  595. "size": {
  596. "width": 60,
  597. "height": 60
  598. },
  599. "position": {
  600. "x": 70,
  601. "y": 560
  602. },
  603. "z": 3,
  604. "parent": "80af6f4c-1d4d-4f66-8237-11fbaa5d8061",
  605. "embeds": [],
  606. "iscontainedinside": [
  607. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061",
  608. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061",
  609. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061",
  610. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061",
  611. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061",
  612. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061",
  613. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061",
  614. "80af6f4c-1d4d-4f66-8237-11fbaa5d8061"
  615. ]
  616. },
  617. "1f2155f4-d323-494e-b157-1e0a8c2f338c": {
  618. "size": {
  619. "width": 60,
  620. "height": 60
  621. },
  622. "position": {
  623. "x": -120,
  624. "y": 140
  625. },
  626. "z": 0,
  627. "embeds": []
  628. },
  629. "4e13c20d-0335-44e7-a6f4-d8a27ee8642c": {
  630. "source": {
  631. "id": "100906b8-589d-45d3-9633-4eb9e44ddbaf"
  632. },
  633. "target": {
  634. "id": "1f2155f4-d323-494e-b157-1e0a8c2f338c"
  635. },
  636. "z": 2
  637. },
  638. "16e7a5e4-f13b-4591-b6c8-3722c22f229f": {
  639. "source": {
  640. "id": "100906b8-589d-45d3-9633-4eb9e44ddbaf"
  641. },
  642. "target": {
  643. "id": "6c215780-cc5d-4f7c-9029-f833506b0ab6"
  644. },
  645. "z": 2
  646. }
  647. }
  648. }
  649. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement