Guest User

Untitled

a guest
Oct 17th, 2017
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 20.38 KB | None | 0 0
  1. ############################################################################
  2. ###################### Action section ###########################
  3. ############################################################################
  4.  
  5.  
  6. action goto connect when connection lost|Socket Error
  7. action goto connect when eval $connected = 0
  8. action goto script.begin when ^YOU ARE IDLE
  9.  
  10.  
  11. action goto exit when eval $dead = 1
  12. action goto exit when ^DEAD>
  13. action goto exit when ^Your death cries echo
  14. action goto exit when eval $health < 30
  15.  
  16. action setvar LEAVE_HUNTING on when eval $health < 70
  17.  
  18. #action send listen to $1 when ^(\S+) begins to lecture you
  19.  
  20. action send #var HUM on when ^You are already performing something\.
  21. action send #var HUM on when ^You continue to hum your
  22. action send #var HUM on when ^You fumble slightly as you begin to hum
  23. action send #var HUM off when ^You finish humming
  24.  
  25. action send #var KATAMBA off when ^Katamba sets, slowly dropping below the horizon
  26. action send #echo >Moon Katamba set $gametime when ^Katamba sets, slowly dropping below the horizon
  27. action send #var KATAMBA off when ^Katamba is below the horizon
  28. action send #var KATAMBA on when ^Katamba is unobscured by clouds\.
  29. action send #var KATAMBA on when ^Katamba is obscured by clouds\.
  30. action send #var KATAMBA on when ^Clouds obscure the sky where Katamba should appear
  31. action send #var KATAMBA on when ^Fully half of Katamba is blocked by the clouds overhead
  32. action send #var KATAMBA on when ^Over half of Katamba is obscured by clouds
  33. action send #var KATAMBA on when ^All but the smallest bit of Katamba is obscured by clouds
  34.  
  35. action send #var XIBAR off when ^Xibar sets, slowly dropping below the horizon
  36. action send #echo >Moon Xibar set $gametime when ^Xibar sets, slowly dropping below the horizon
  37. action send #var XIBAR off when ^Xibar is below the horizon
  38. action send #var XIBAR on when ^Xibar is unobscured by clouds
  39. action send #var XIBAR on when ^Clouds obscure the sky where Xibar should appear
  40. action send #var XIBAR on when ^Fully half of Xibar is blocked by the clouds overhead
  41. action send #var XIBAR on when ^All but the smallest bit of Xibar is obscured by clouds
  42.  
  43. action send #var YAVASH off when ^Yavash sets, slowly dropping below the horizon
  44. action send #echo >Moon Yavash set $gametime when ^Yavash sets, slowly dropping below the horizon
  45. action send #var YAVASH off when ^Yavash is below the horizon
  46. action send #var YAVASH on when ^Yavash is unobscured by clouds
  47. action send #var YAVASH on when ^Clouds obscure the sky where Yavash should appear
  48. action send #var YAVASH on when ^Fully half of Yavash is blocked by the clouds overhead
  49. action send #var YAVASH on when ^All but the smallest bit of Xibar is obscured by clouds
  50.  
  51. action send #var SOD on when ^A shifting plexus of glistening azure lines forms around you\.
  52. action send #var SOD on when ^You sense the Seal of Deflection spell upon you
  53. action send #var SOD on when ^The shifting plexus of glistening azure lines reforms around you\.
  54. action send #var SOD off when ^The glistening azure lines fade away\.
  55.  
  56. action send #var SEER on when ^You feel oddly in tune with the webs of fate\.
  57. action send #var SEER on when ^You sense the Seer's Sense spell upon you
  58. action send #var SEER on when ^You can sense no changes\.
  59. action send #var SEER off when ^You no longer feel as strong a connection to the webs of fate\.
  60.  
  61. action send #var EASE on when ^Pale yellow sparks begin to flicker over your body, infusing you with a sense of strength and vigor\.
  62. action send #var EASE on when ^You sense the Ease Burden spell upon you
  63. action send #var EASE off when ^You feel a weight settle over you, and realize the magic that has been easing your burden has faded\.
  64.  
  65. action send #var COL on when ^With a barely perceptible screech, nearby shadows thicken and ooze toward you, covering you in a protective cage of shadows made of thin, crazed lines\.
  66. action send #var COL on when ^You sense the Cage of Light spell upon you
  67. action send #var COL off when ^Your cage of shadows shatters, the fragments dissipating as they fall away\.
  68.  
  69. action send #var AUS on when ^Your color vision blossoms with new depth\.
  70. action send #var AUS on when ^The auras around you remain unchanged\.
  71. action send #var AUS on when ^You sense the Aura Sight spell upon you
  72. action send #var AUS off when ^Your color vision returns to normal, causing the auras you see to dim and vanish\.
  73.  
  74. action send #var SHADOW on when ^There is a subtle change in the lighting around you\. You should find it easier to skulk in the shadows now\.
  75. action send #var SHADOW on when ^You sense the Shadows spell upon you
  76.  
  77. action send #var FAVORS when ^*Favors: (\S+)
  78.  
  79.  
  80.  
  81. ############################################################################
  82. ###################### Variable section ###########################
  83. ############################################################################
  84.  
  85. var WORN_ITEMS halberd|pike
  86.  
  87. var BOXES trunk|crate|skippet|coffer|caddy|strongbox|box|casket|chest
  88. var BAG_FULL off
  89.  
  90. var MONSTER_LIST shaman|goblin|lout
  91. var AMMO rock
  92.  
  93. var HUM_SONG psalm
  94. var HUM off
  95.  
  96. var SEER_LEVEL 20
  97. var SOD_LEVEL
  98. var EASE_LEVEL 20
  99. var AUS_LEVEL 20
  100. var SHADOW_LEVEL 30
  101.  
  102. put #var SEER off
  103. put #var SOD off
  104. put #var EASE off
  105. put #var AUS off
  106. put #var SHADOW off
  107.  
  108. var LEAVE_HUNTING off
  109.  
  110. var HEAL_LOCATION heal_merk
  111.  
  112. put #var last.favor $gametime
  113.  
  114.  
  115.  
  116. ############################################################################
  117. ###################### Script Start section ###########################
  118. ############################################################################
  119.  
  120. if "$connected" = "0" then {
  121. goto connect
  122. }
  123.  
  124.  
  125. goto end.of.base
  126.  
  127.  
  128. ############################################################################
  129. ###################### Buff Section ###########################
  130. ############################################################################
  131.  
  132. buff.section:
  133.  
  134. if $mana < 80 then return
  135. if "$SEER" = "off" then {
  136. gosub prep seer %SEER_LEVEL
  137. gosub charge armband 12
  138. gosub focus armband
  139. gosub cast
  140. }
  141. if $mana < 80 then return
  142. if "$SOD" = "off" then {
  143. gosub prep sod %SOD_LEVEL
  144. gosub charge armband 13
  145. gosub focus armband
  146. gosub cast
  147. }
  148. if $mana < 80 then return
  149. if "$EASE" = "off" then {
  150. gosub prep ease %EASE_LEVEL
  151. gosub charge armband 13
  152. gosub focus armband
  153. gosub cast
  154. }
  155. if $mana < 80 then return
  156. if "$AUS" = "off" then {
  157. gosub prep aus %AUS_LEVEL
  158. gosub charge armband 12
  159. gosub focus armband
  160. gosub cast
  161. }
  162. if $mana < 80 then return
  163. if "$SHADOW" = "off" then {
  164. gosub prep shadow %SHADOW_LEVEL
  165. gosub charge armband 12
  166. gosub charge armband 12
  167. gosub focus armband
  168. gosub cast
  169. }
  170. return
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179. ############################################################################
  180. ###################### Routine section ###########################
  181. ############################################################################
  182.  
  183.  
  184. advance2:
  185. if $hidden = 1 then put shiver
  186. pause
  187. put engage
  188. pause 2
  189. goto attack1
  190.  
  191. aim:
  192.  
  193. var location aim1
  194. var todo $0
  195.  
  196. aim1:
  197.  
  198. matchre return ^You begin to target
  199. matchre return ^You shift your target to
  200. matchre return ^You are already targetting that\!
  201. matchre return ^You need both hands in order to aim\.
  202. matchre return ^At what are you trying to aim\?
  203. matchre return ^Your .+ isn't loaded\!
  204. matchre return ^But the .+ in your right hand isn't a ranged weapon\!
  205. matchre return ^You don't have a ranged weapon to aim with\!
  206. put aim %todo
  207. goto retry
  208.  
  209.  
  210. attack:
  211. var todo $0
  212. var location attack1
  213. if $stamina < 85 then pause 3
  214. pause .1
  215. attack1:
  216. if $stamina < 85 then pause 4
  217. matchre advance2 ^It would help if you were closer
  218. matchre advance2 ^You aren't close enough to attack\.
  219. matchre return ^You are already in a position to parry
  220. matchre return ^But you are already dodging
  221. matchre return ^You don't have a weapon to draw with\!
  222. matchre return ^But you don't have a ranged weapon in your hand to fire with\!
  223. matchre return ^But your .+ isn't loaded\!
  224. matchre return ^You need two hands to wield this weapon\!
  225. matchre return ^I could not find what you were referring to\.
  226. matchre return ^At what are you trying to throw
  227. matchre return ^At what are you trying to attack\?
  228. matchre return ^There is nothing else to face
  229. matchre return ^How can you snipe if you are not hidden\?
  230. matchre return ^What are you trying to throw?
  231. matchre return ^\[Roundtime
  232. matchre return ^Roundtime:
  233. matchre return is already quite dead\.
  234. put %todo
  235. goto retry
  236.  
  237. bag.full:
  238.  
  239. setvar BAG_FULL on
  240. put empty left
  241. return
  242.  
  243.  
  244.  
  245. cast:
  246.  
  247. var location cast1
  248. var todo $0
  249.  
  250. cast1:
  251.  
  252. matchre return ^You gesture
  253. matchre return ^You don't have a spell prepared\!
  254. matchre return ^Your spell pattern collapses
  255. matchre return ^With a wave of your hand,
  256. matchre return ^You wave your hand\.
  257. matchre return ^With a flick of your wrist,
  258. matchre return ^Your secondary spell pattern dissipates
  259. matchre return ^You can't cast .+ on yourself\!
  260. matchre return ^You make a holy gesture
  261. matchre return ^You raise your palms and face to the heavens
  262. matchre return ^I could not find what you were referring to\.
  263. matchre return ^You have difficulty manipulating the mana streams, causing the spell pattern to collapse at the last moment\.
  264. put cast %todo
  265. goto retry
  266.  
  267. charge:
  268.  
  269. var location charge1
  270. var todo $0
  271.  
  272. charge1:
  273.  
  274. matchre return ^Roundtime
  275. put charge my %todo
  276. goto retry
  277.  
  278. collect:
  279.  
  280. var location collect1
  281. var todo $0
  282.  
  283. collect1:
  284.  
  285. matchre return ^Roundtime
  286. matchre return ^You really need to have at least one hand free to forage properly\.
  287. matchre return ^You cannot collect anything while in combat\!
  288. matchre return ^The room is too cluttered to find anything here\!
  289. matchre return ^Now what did the rocks ever do to you
  290. put collect %todo
  291. goto retry
  292.  
  293. dead.critter:
  294.  
  295. if matchre ("$roomobjs", "(%MONSTER_LIST) ((which|that) appears dead|\(dead\))") then {
  296. put loot $1 box
  297. pause 2
  298. gosub loot
  299. pause
  300. put face next
  301. }
  302. return
  303.  
  304. empty:
  305.  
  306. var location empty1
  307. var todo $0
  308.  
  309. empty1:
  310.  
  311. matchre return ^Your .* is already empty\.
  312. matchre return ^You drop
  313. put empty %todo
  314. goto retry
  315.  
  316. face.next:
  317.  
  318. put face next
  319. return
  320.  
  321. fire:
  322.  
  323. var location fire1
  324. var todo $0
  325.  
  326. fire1:
  327.  
  328. matchre return ^*Roundtime
  329. matchre face.next ^I could not find what you were referring to\.
  330. put fire %todo
  331. goto retry
  332.  
  333. focus:
  334.  
  335. var location focus1
  336. var todo $0
  337.  
  338. focus1:
  339.  
  340. matchre return ^Roundtime
  341. matchre return ^Your link to the cambrinth armband is intact\.
  342. put focus %todo
  343. goto retry
  344.  
  345. gem.pouch.full:
  346.  
  347. gosub remove gem pouch
  348. gosub stow gem pouch
  349. gosub get gem pouch from my hip pouch
  350. gosub wear gem pouch
  351. return
  352.  
  353.  
  354.  
  355. get:
  356.  
  357. var location get1
  358. var todo $0
  359.  
  360. get1:
  361.  
  362. matchre return ^You get
  363. matchre return ^You pull
  364. matchre return ^You pick up
  365. matchre return ^What were you referring to\?
  366. matchre return ^You are already holding that\.
  367. matchre stow.get ^You need a free hand to pick that up\.
  368. matchre return ^But that is already in your inventory\.
  369. matchre return ^You fade in for a moment as you pick up
  370. matchre return ^You are not strong enough to pick that up\!
  371. put get %todo
  372. goto retry
  373.  
  374. hum:
  375.  
  376. var location hum1
  377. var todo $0
  378.  
  379. hum1:
  380.  
  381. matchre return ^You fumble slightly as you begin to hum a
  382. matchre return ^You are already performing something
  383. put hum %todo
  384. goto retry
  385.  
  386. kick:
  387.  
  388. var location kick1
  389. var todo $0
  390.  
  391. kick1:
  392.  
  393. matchre kick1 ^You take a step back and run up to the
  394. matchre kick2 ^You can't do that from your position\.
  395. matchre kick2 ^You throw a glorious temper tantrum\!
  396. matchre return ^I could not find what you were referring to\.
  397. matchre return ^Now what did the rocks ever do to you
  398. matchre return ^Now what did the rock ever do to you
  399. put kick %todo
  400. goto retry
  401.  
  402. kick2:
  403.  
  404. gosub stand
  405. goto kick
  406.  
  407. load:
  408.  
  409. var location load1
  410. var todo $0
  411.  
  412. load1:
  413.  
  414. matchre return ^You reach into your
  415. matchre return ^Roundtime
  416. matchre return ^You don't have the proper ammunition readily available for your
  417. matchre return ^Your .* is already loaded with a
  418. put load %todo
  419. goto retry
  420.  
  421. location1:
  422.  
  423. gosub stop.humming1
  424. goto %location
  425.  
  426. location.p:
  427.  
  428. pause
  429.  
  430. location:
  431.  
  432. goto %location
  433. loot:
  434.  
  435. gosub loot.coin
  436. gosub loot.gem
  437. gosub loot.ammo
  438. gosub loot.box
  439. return
  440.  
  441. loot.ammo:
  442.  
  443. if matchre ("$roomobjs" , "(%AMMO)" then {
  444. gosub get $1
  445. gosub stow $1
  446. goto loot.ammo
  447. }
  448. return
  449.  
  450. loot.box:
  451.  
  452. var location loot.box1
  453.  
  454. loot.box1:
  455.  
  456. matchre return ^Stow what
  457. matchre bag.full ^There isn't any more room in the bag for that\.
  458. matchre bag.full ^You just can't get the .* to fit in the duffel bag, no matter how you arrange it\.
  459. matchre loot.box ^You put your .* in your duffel bag\.
  460. matchre loot.box ^You put your
  461. put stow box
  462. goto retry
  463.  
  464. loot.coin:
  465.  
  466. var location loot.coin1
  467.  
  468. loot.coin1:
  469.  
  470. matchre loot.coin ^You pick up
  471. matchre return ^What were you referring to
  472. put get coin
  473. goto retry
  474.  
  475.  
  476. loot.gem:
  477.  
  478. var location loot.gem1
  479.  
  480. loot.gem1:
  481.  
  482. matchre return ^Stow what
  483. matchre gem.pouch.full ^You think the gem pouch is too full to fit another gem into\.
  484. matchre loot.gem ^You open your pouch and put the
  485. matchre loot.gem ^You put your
  486. put stow gem
  487. goto retry
  488.  
  489. monster.wait:
  490.  
  491. if $monstercount > 0 then return
  492. put perc moonlight
  493. pause $roundtime
  494. pause
  495. if $monstercount > 0 then return
  496.  
  497. put perc stellar
  498. pause $roundtime
  499. pause
  500. if $monstercount > 0 then return
  501.  
  502. put perc trans
  503. pause $roundtime
  504. pause
  505. if $monstercount > 0 then return
  506.  
  507. put perc katamba
  508. pause $roundtime
  509. pause
  510. if $monstercount > 0 then return
  511.  
  512. put perc yavash
  513. pause $roundtime
  514. pause
  515. if $monstercount > 0 then return
  516. put appr gem pouch
  517. pause $roundtime
  518. pause
  519. if $monstercount > 0 then return
  520. goto monster.wait
  521.  
  522. power.perc:
  523.  
  524. var location power.perc1
  525. var todo $0
  526.  
  527. power.perc1:
  528.  
  529. matchre return ^Roundtime
  530. put perc %todo
  531. goto retry
  532.  
  533. prep:
  534.  
  535. var location prep1
  536. var todo $0
  537.  
  538. prep1:
  539.  
  540. matchre return ^You begin chanting a prayer
  541. matchre return ^You close your eyes and breathe deeply,
  542. matchre return ^You trace an arcane sigil in the air,
  543. matchre return ^Heatless orange flames blaze between your fingertips
  544. matchre return ^Your eyes darken to black as a starless night
  545. matchre return ^You raise your arms skyward, chanting
  546. matchre return ^You are already preparing
  547. matchre return ^Icy blue frost crackles up your arms
  548. matchre return ^You make a careless gesture as you chant the words
  549. matchre return ^Tiny tendrils of lightning jolt between your hands
  550. matchre return ^The wailing of lost souls accompanies your preparations
  551. matchre return ^Your skin briefly withers and tightens, becoming gaunt
  552. matchre return ^Images of streaking stars falling from the heavens flash across your vision
  553. matchre return ^A nagging sense of desperation guides your hands through the motions
  554. matchre return ^You hastily shout the arcane phrasings needed to prepare
  555. matchre return ^You deftly waggle your fingers in the precise motions needed to prepare
  556. matchre return ^With great force, you slap your hands together before you and slowly pull them apart,
  557. matchre return ^With no small amount of effort, you slowly recall the teachings
  558. matchre return ^You struggle against your bindings to prepare
  559. matchre return ^You raise one hand before you and concentrate
  560. matchre return ^As you begin to focus on preparing
  561. put prepare %todo
  562. goto retry
  563.  
  564. remove:
  565.  
  566. var location remove1
  567. var todo $0
  568.  
  569. remove1:
  570.  
  571. matchre return ^You sling a
  572. matchre return ^You remove a
  573. matchre return ^Remove what\?
  574. put remove %todo
  575. goto retry
  576.  
  577. retreat:
  578.  
  579. var location retreat
  580. matchre retreat ^You retreat from combat\.
  581. matchre retreat ^You retreat back to pole range\.
  582. matchre retreat ^You stop advancing
  583. matchre retreat ^You sneak back out
  584. matchre stand ^You must stand first\.
  585. matchre return ^You are already as far away as you can get\!
  586. matchre return ^You try to
  587. matchre return revealing your hiding place\!
  588. put retreat
  589. goto retry
  590.  
  591. retry:
  592.  
  593. matchre location ^\.\.\.wait
  594. matchre location ^Sorry, you may
  595. matchre location ^Sorry, system is slow
  596. matchre location.p ^You don't seem to be able to move to do that
  597. matchre location.p ^It's all a blur
  598. matchre location.p ^You're unconscious\!
  599. matchre location.p ^You are still stunned
  600. matchre location.p There is no need for violence here\.
  601. matchre location.p ^You can't do that while entangled in a web
  602. matchre location.p ^You struggle against the shadowy webs to no avail\.
  603. matchre location.p ^You attempt that, but end up getting caught in an invisible box\.
  604. matchre location1 ^You should stop playing before you do that\.
  605. matchre location1 ^You are a bit too busy performing to do that\.
  606. matchre location1 ^You are concentrating too much upon your performance to do that\.
  607. matchwait
  608.  
  609. return:
  610.  
  611. return
  612.  
  613. stand:
  614.  
  615. if $standing = "1" then return
  616. var location stand1
  617.  
  618. stand1:
  619.  
  620. matchre return ^You stand back up\.
  621. matchre return ^You swim back up
  622. matchre return ^You are already standing\.
  623. matchre stand1 ^You are so unbalanced you cannot manage to stand\.
  624. matchre stand1 ^You are overburdened and cannot manage to stand\.
  625. matchre stand1 ^The weight of all your possessions prevents you from standing\.
  626. matchre stand1 ^Roundtime
  627. put stand
  628. goto retry
  629.  
  630.  
  631. stop.humming:
  632.  
  633. var location stop.humming
  634.  
  635. stop.humming1:
  636.  
  637. matchre return ^You stop playing your song\.
  638. matchre return ^In the name of love\?
  639. put stop hum
  640. goto retry
  641.  
  642. stow.all:
  643.  
  644.  
  645. if "$righthand" != "Empty" then gosub stow $righthand
  646. if "$lefthand" != "Empty" then gosub stow $lefthand
  647. if "$righthand" != "Empty" then gosub empty right
  648. if "$lefthand" != "Empty" then gosub empty left
  649. return
  650.  
  651.  
  652. stow:
  653.  
  654. if matchre ("$righthand" , "(%WORN_ITEMS)") then gosub wear $1
  655. if matchre ("$lefthand" , "(%WORN_ITEMS)") then gosub wear $1
  656. var location stow1
  657. var todo $0
  658.  
  659. stow1:
  660.  
  661. matchre unload ^You should unload the
  662. matchre return ^But that is already in your inventory
  663. matchre return ^You put your
  664. matchre return ^Stow what\?
  665. matchre return ^You just can't get the .* to fit in the duffel bag, no matter how you arrange it\.
  666. put stow %todo
  667. goto retry
  668.  
  669.  
  670. target:
  671.  
  672. var location target1
  673. var todo $0
  674.  
  675. target1:
  676.  
  677. matchre return ^I could not find what you were referring to\.
  678. matchre return ^You begin to weave
  679. matchre return ^Your target pattern is already formed
  680. matchre return ^You must be preparing a spell in order to target it\!
  681. matchre return ^You don't need to target the spell you're preparing\.
  682. matchre target2 ^There is no need to target
  683. put target %todo
  684. goto retry
  685.  
  686. target2:
  687.  
  688. put face next
  689. goto target1
  690.  
  691. unload:
  692.  
  693. matchre location ^You unload the
  694. matchre location ^Roundtime
  695. put unload
  696. matchwait 5
  697. goto unload
  698.  
  699. wear:
  700.  
  701. var location wear1
  702. var todo $0
  703.  
  704. wear1:
  705.  
  706. matchre return ^You attach a
  707. matchre return ^You sling your
  708. put wear %todo
  709. goto retry
  710.  
  711.  
  712. ############################################################################
  713. ###################### connecting section ###########################
  714. ############################################################################
  715.  
  716. temp.exit:
  717.  
  718. action remove eval $stunned = 1
  719. action remove eval $connected = 0
  720. action remove connection lost|Socket Error
  721. action remove eval $health < 60
  722. put quit
  723. pause 300
  724. put #connect
  725. pause 15
  726. action remove eval $health < 60
  727. gosub travel merkarch
  728. gosub heal.me
  729. goto script.begin
  730.  
  731. connect:
  732.  
  733. action remove eval $connected = 0
  734. pause 0.1
  735. pause 0.1
  736. echo *** You have been disconnected. Attempting to reconnect ***
  737. put #echo log *** Attempting to reconnect ***
  738. action goto Connected when You look around, taking a moment to get your bearings.
  739. goto connecting
  740. exit
  741.  
  742. connecting:
  743.  
  744. pause 0.1
  745. pause 0.1
  746. put #connect
  747. pause 15
  748. if $connected = 0 then goto connecting
  749. goto connected
  750.  
  751. connected:
  752.  
  753. action goto connect when eval $connected = 0
  754. pause 0.1
  755. pause 0.1
  756. Echo *** You have been Reconnected ***
  757. put #echo log *** Reconnected ***
  758. action remove You look around, taking a moment to get your bearings.
  759. goto script.begin
  760.  
  761.  
  762.  
  763. sristal.exit:
  764.  
  765.  
  766. put quit
  767. pause 2
  768. if $connected = 1 then goto sristal.exit
  769. pause 1800
  770. goto script.begin
  771.  
  772. exit:
  773.  
  774.  
  775. put exit
  776. put exit
  777. put exit
  778. exit
  779. exit
  780. exit
  781.  
  782.  
  783.  
  784. end.of.base:
Add Comment
Please, Sign In to add comment