307 skills found · Page 6 of 11
bedimcode / Magic Motion ButtonCSS Magic Motion Button Hover Effects Animation
ArslanAmeer / Ui Component Button Border 360A Stylish and Elegant button Hover Effect (360 fill) made with HTML5 & CSS
geshaa27 / Mynameisgess<!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1"> <style type="text/css">svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:solid .08em #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}</style> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/froala/design-blocks@master/dist/css/froala_blocks.min.css"> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:100,100i,300,300i,400,400i,500,500i,700,700i,900,900i"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/froala-editor@2.9.1/css/froala_editor.pkgd.min.css"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/froala-editor@2.9.1/css/froala_style.min.css"> </head> <body> <section class="fdb-block bg-dark" data-block-type="contents" data-id="1" draggable="true"> <div class="container"> <div class="row text-center"> <div class="col-12" style="z-index: 10000;"><h2><strong><em><span style="color: rgb(209, 213, 216);">mynameisgess.</span></em></strong></h2></div> </div> </div> </section> <section class="fdb-block" data-block-type="contents" data-id="9" draggable="true"> <div class="container"> <div class="row text-center align-items-center"> <div class="col-8 col-md-4" style="z-index: 10000;"><p><img alt="image" class="img-fluid fr-fic fr-dii" src="blob:https://www.froala.com/e04cc1f7-bf1a-4374-8d0e-74473bc66e47"></p></div> <div class="col-4 col-md-2" style="z-index: 10000;"><div class="row"><div class="col-12 fr-box" role="application" style="z-index: 10000;"><div class="fr-wrapper" dir="auto"><div aria-disabled="false" class="fr-element fr-view" contenteditable="true" dir="auto" spellcheck="true"><p><img alt="image" class="img-fluid fr-fic fr-dii" src="blob:https://www.froala.com/6d07caf8-f98a-465d-aa82-c4bd4484615a"></p></div></div></div></div><div class="row mt-4"><div class="col-12 fr-box" role="application" style="z-index: 10000;"><div class="fr-wrapper" dir="auto"><div aria-disabled="false" class="fr-element fr-view" contenteditable="true" dir="auto" spellcheck="true"><p><img alt="image" class="img-fluid fr-fic fr-dii" src="blob:https://www.froala.com/14472e79-d994-4b72-ad14-3f59db5924df" style="width: 150px;"></p></div></div></div></div></div> <div class="col-12 col-md-6 col-lg-5 ml-auto pt-5 pt-md-0" style="z-index: 10000;"><p><img alt="image" class="fdb-icon fr-fic fr-dii" src="https://cdn.jsdelivr.net/gh/froala/design-blocks@2.0.1/dist/imgs//icons/github.svg"></p><h1>Geshaalgif.</h1><p class="lead">let me introduce my self .hallo my name is gesha you can call me gess.... i am 15 year old.i live in sukabumi i went to school in smk wikrama bogor</p></div> </div> </div> </section> <section class="fdb-block" data-block-type="testimonials" data-id="10" draggable="true"> <div class="container"> <div class="row align-items-center justify-content-center"> <div class="col-12 col-md-10 col-lg-8" style="z-index: 10000;"><p class="lead">"orang - orang boleh meragukanmu...memandang sebelah mata padamu,orang orang boleh melakukan itu,karna takkan mampu mematahkanmu selama kau tetap yakin pada dirimu</p><h2 class="lead"> ~geshaalgif.</h2></div> <div class="col-8 col-sm-6 col-md-2 col-lg-3 col-xl-2 mt-4 mt-md-0 ml-auto mr-auto mr-md-0" style="z-index: 10000;"><p><img alt="image" class="img-fluid rounded-circle fr-fic fr-dii" src="blob:https://www.froala.com/b1a0cb4a-10a3-4cef-bb95-fe8e1f042bc1"></p></div> </div> </div> </section> <section class="fdb-block pt-0 fp-active" data-block-type="contacts" data-id="7" draggable="true"> <div class="container-fluid p-0 pb-3"> <iframe class="map" src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2848.8444388087937!2d26.101253041406952!3d44.43635311654287!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x40b1ff4770adb5b7%3A0x58147f39579fe6fa!2zR3J1cHVsIFN0YXR1YXIgIkPEg3J1yJthIEN1IFBhaWHIm2Ui!5e0!3m2!1sen!2sro!4v1507381157656" width="100%" height="300" frameborder="0" style="border:0" allowfullscreen=""></iframe> </div> <div class="container"> <div class="row text-center justify-content-center pt-5"> <div class="col-12 col-md-7" style="z-index: 10000;"><h1>Contact Us</h1></div> </div> <div class="row justify-content-center pt-4"> <div class="col-12 col-md-7" style="z-index: 10000;"><form><div class="row"><div class="col fr-box" role="application" style="z-index: 10000;"><div class="fr-wrapper" dir="auto"><div aria-disabled="false" class="fr-element fr-view" contenteditable="true" dir="auto" spellcheck="true"><p><input type="text" class="form-control" placeholder="Email" value=""></p></div></div></div></div><div class="row mt-4"><div class="col fr-box" role="application" style="z-index: 10000;"><div class="fr-wrapper" dir="auto"><div aria-disabled="false" class="fr-element fr-view" contenteditable="true" dir="auto" spellcheck="true"><p><input type="email" class="form-control" placeholder="Subject" value=""></p></div></div></div></div><div class="row mt-4"><div class="col fr-box" role="application" style="z-index: 10000;"><div class="fr-wrapper" dir="auto"><div aria-disabled="false" class="fr-element fr-view" contenteditable="true" dir="auto" spellcheck="true"><p><textarea class="form-control" name="message" rows="3" placeholder="How can we help?" value=""></textarea></p></div></div></div></div><div class="row mt-4"><div class="col text-center fr-box" role="application" style="z-index: 10000;"><div class="fr-wrapper" dir="auto"><div aria-disabled="false" class="fr-element fr-view" contenteditable="true" dir="auto" spellcheck="true"><p><button class="btn btn-primary" type="submit">Submit</button></p></div></div></div></div></form></div> </div> <div class="row-100"></div> </div> <div class="bg-dark"> <div class="container"> <div class="row-50"></div> <div class="row justify-content-center text-center"> <div class="col-12 col-md mr-auto ml-auto" style="z-index: 10000;"><p><img alt="image" height="40" class="mb-2 fr-fic fr-dii" src="https://cdn.jsdelivr.net/gh/froala/design-blocks@2.0.1/dist/imgs//icons/phone.svg"></p><p class="lead">+621462321105</p></div> <div class="col-12 col-md pt-4 pt-md-0 mr-auto ml-auto" style="z-index: 10000;"><p><img alt="image" height="40" class="mb-2 fr-fic fr-dii" src="https://cdn.jsdelivr.net/gh/froala/design-blocks@2.0.1/dist/imgs//icons/navigation.svg"></p><p class="lead">jl siliwangi no 70.cicurug 43359.sukabumi west java</p><div dir="auto"><div contenteditable="true" dir="auto" spellcheck="true"><p><br><img data-fr-image-pasted="true" alt="image" height="40" src="https://cdn.jsdelivr.net/gh/froala/design-blocks@2.0.1/dist/imgs//icons/mail.svg" class="fr-fic fr-dii"></p><p>geshaalgif14@gmail.com</p></div></div></div> <div class="col-12 col-md pt-4 pt-md-0 mr-auto ml-auto" style="z-index: 10000;"><p><img alt="image" height="40" class="mb-2 fr-fic fr-dii" src="https://cdn.jsdelivr.net/gh/froala/design-blocks@2.0.1/dist/imgs//icons/mail.svg"></p><p class="lead">diki.agik@gmail.com</p></div> </div> <div class="row-50"><span class="fr-marker" data-id="0" data-type="false" style="display: inline-block; line-height: 0;"></span></div> </div> </div> <div class="container"> <div class="row-70"></div> <div class="row text-center"> <div class="col fr-box" role="application" style="z-index: 10000;"><div class="fr-wrapper" dir="auto"><div class="fr-element fr-view" dir="auto" contenteditable="true" aria-disabled="false" spellcheck="true"><p class="h2"><a class="mx-2" href="https://www.froala.com"><!-- <i class="fab fa-facebook"></i> --></a> <a class="mx-2" href="https://www.froala.com"><!-- <i class="fab fa-twitter"></i> --></a> <a class="mx-2" href="https://www.froala.com"><!-- <i class="fab fa-instagram"></i> --></a> <a class="mx-2" href="https://www.froala.com"><!-- <i class="fab fa-google"></i> --></a> <a class="mx-2" href="https://www.froala.com"><!-- <i class="fab fa-pinterest"></i> --></a></p></div></div></div> </div> </div> </section> <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/froala-editor@2.9.1/js/froala_editor.pkgd.min.js"></script> <script src="https://use.fontawesome.com/releases/v5.5.0/js/all.js"></script> <div class="fr-toolbar fr-desktop fr-inline fr-above" style="z-index: 10001; display: none; top: 2246.59px; left: 105px;"><span class="fr-arrow" style="margin-left: -5px;"></span><button id="bold-1" type="button" tabindex="-1" role="button" aria-pressed="false" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="bold" aria-disabled="false"><svg class="svg-inline--fa fa-bold fa-w-12" aria-hidden="true" data-prefix="fas" data-icon="bold" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" data-fa-i2svg=""><path fill="currentColor" d="M304.793 243.891c33.639-18.537 53.657-54.16 53.657-95.693 0-48.236-26.25-87.626-68.626-104.179C265.138 34.01 240.849 32 209.661 32H24c-8.837 0-16 7.163-16 16v33.049c0 8.837 7.163 16 16 16h33.113v318.53H24c-8.837 0-16 7.163-16 16V464c0 8.837 7.163 16 16 16h195.69c24.203 0 44.834-1.289 66.866-7.584C337.52 457.193 376 410.647 376 350.014c0-52.168-26.573-91.684-71.207-106.123zM142.217 100.809h67.444c16.294 0 27.536 2.019 37.525 6.717 15.828 8.479 24.906 26.502 24.906 49.446 0 35.029-20.32 56.79-53.029 56.79h-76.846V100.809zm112.642 305.475c-10.14 4.056-22.677 4.907-31.409 4.907h-81.233V281.943h84.367c39.645 0 63.057 25.38 63.057 63.057.001 28.425-13.66 52.483-34.782 61.284z"></path></svg><!-- <i class="fas fa-bold" aria-hidden="true"></i> --><span class="fr-sr-only">Bold</span></button><button id="italic-1" type="button" tabindex="-1" role="button" aria-pressed="false" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="italic" aria-disabled="false"><svg class="svg-inline--fa fa-italic fa-w-10" aria-hidden="true" data-prefix="fas" data-icon="italic" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" data-fa-i2svg=""><path fill="currentColor" d="M204.758 416h-33.849l62.092-320h40.725a16 16 0 0 0 15.704-12.937l6.242-32C297.599 41.184 290.034 32 279.968 32H120.235a16 16 0 0 0-15.704 12.937l-6.242 32C96.362 86.816 103.927 96 113.993 96h33.846l-62.09 320H46.278a16 16 0 0 0-15.704 12.935l-6.245 32C22.402 470.815 29.967 480 40.034 480h158.479a16 16 0 0 0 15.704-12.935l6.245-32c1.927-9.88-5.638-19.065-15.704-19.065z"></path></svg><!-- <i class="fas fa-italic" aria-hidden="true"></i> --><span class="fr-sr-only">Italic</span></button><button id="color-1" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="color" data-popup="true" aria-disabled="false"><svg class="svg-inline--fa fa-tint fa-w-11" aria-hidden="true" data-prefix="fas" data-icon="tint" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 352 512" data-fa-i2svg=""><path fill="currentColor" d="M205.22 22.09c-7.94-28.78-49.44-30.12-58.44 0C100.01 179.85 0 222.72 0 333.91 0 432.35 78.72 512 176 512s176-79.65 176-178.09c0-111.75-99.79-153.34-146.78-311.82zM176 448c-61.75 0-112-50.25-112-112 0-8.84 7.16-16 16-16s16 7.16 16 16c0 44.11 35.89 80 80 80 8.84 0 16 7.16 16 16s-7.16 16-16 16z"></path></svg><!-- <i class="fas fa-tint" aria-hidden="true"></i> --><span class="fr-sr-only">Colors</span></button><button id="paragraphFormat-1" type="button" tabindex="-1" role="button" aria-controls="dropdown-menu-paragraphFormat-1" aria-expanded="false" aria-haspopup="true" class="fr-command fr-btn fr-dropdown fr-btn-font_awesome_5 fr-selection" data-cmd="paragraphFormat" aria-disabled="false"><svg class="svg-inline--fa fa-paragraph fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="paragraph" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M408 32H177.531C88.948 32 16.045 103.335 16 191.918 15.956 280.321 87.607 352 176 352v104c0 13.255 10.745 24 24 24h32c13.255 0 24-10.745 24-24V112h32v344c0 13.255 10.745 24 24 24h32c13.255 0 24-10.745 24-24V112h40c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24z"></path></svg><!-- <i class="fas fa-paragraph" aria-hidden="true"></i> --><span class="fr-sr-only">Paragraph Format</span></button><div id="dropdown-menu-paragraphFormat-1" class="fr-dropdown-menu" role="listbox" aria-labelledby="paragraphFormat-1" aria-hidden="true" style="left: 130px; top: 38px;"><div class="fr-dropdown-wrapper" role="presentation"><div class="fr-dropdown-content" role="presentation"><ul class="fr-dropdown-list" role="presentation"><li role="presentation"><p style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command fr-active" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="N" title="Normal" aria-selected="true">Normal</a></p></li><li role="presentation"><h1 style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="H1" title="Heading 1" aria-selected="false">Heading 1</a></h1></li><li role="presentation"><h2 style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="H2" title="Heading 2" aria-selected="false">Heading 2</a></h2></li><li role="presentation"><h3 style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="H3" title="Heading 3" aria-selected="false">Heading 3</a></h3></li><li role="presentation"><h4 style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="H4" title="Heading 4" aria-selected="false">Heading 4</a></h4></li><li role="presentation"><pre style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="PRE" title="Code" aria-selected="false">Code</a></pre></li></ul></div></div></div><button id="align-1" type="button" tabindex="-1" role="button" aria-controls="dropdown-menu-align-1" aria-expanded="false" aria-haspopup="true" class="fr-command fr-btn fr-dropdown fr-btn-font_awesome_5" data-cmd="align" aria-disabled="false"><svg class="svg-inline--fa fa-align-center fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-center" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M352 44v40c0 8.837-7.163 16-16 16H112c-8.837 0-16-7.163-16-16V44c0-8.837 7.163-16 16-16h224c8.837 0 16 7.163 16 16zM16 228h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 256h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm320-200H112c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16h224c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16z"></path></svg><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><span class="fr-sr-only">Align</span></button><div id="dropdown-menu-align-1" class="fr-dropdown-menu" role="listbox" aria-labelledby="align-1" aria-hidden="true" style="left: 172px; top: 38px;"><div class="fr-dropdown-wrapper" role="presentation"><div class="fr-dropdown-content" role="presentation"><ul class="fr-dropdown-list" role="presentation"><li role="presentation"><a class="fr-command fr-title" tabindex="-1" role="option" data-cmd="align" data-param1="left" aria-selected="false"><svg class="svg-inline--fa fa-align-left fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-left" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M288 44v40c0 8.837-7.163 16-16 16H16c-8.837 0-16-7.163-16-16V44c0-8.837 7.163-16 16-16h256c8.837 0 16 7.163 16 16zM0 172v40c0 8.837 7.163 16 16 16h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16zm16 312h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm256-200H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16h256c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16z"></path></svg><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><span class="fr-sr-only">Align Left</span></a></li><li role="presentation"><a class="fr-command fr-title fr-active" tabindex="-1" role="option" data-cmd="align" data-param1="center" aria-selected="true"><svg class="svg-inline--fa fa-align-center fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-center" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M352 44v40c0 8.837-7.163 16-16 16H112c-8.837 0-16-7.163-16-16V44c0-8.837 7.163-16 16-16h224c8.837 0 16 7.163 16 16zM16 228h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 256h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm320-200H112c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16h224c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16z"></path></svg><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><span class="fr-sr-only">Align Center</span></a></li><li role="presentation"><a class="fr-command fr-title" tabindex="-1" role="option" data-cmd="align" data-param1="right" title="Align Right" aria-selected="false"><svg class="svg-inline--fa fa-align-right fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M160 84V44c0-8.837 7.163-16 16-16h256c8.837 0 16 7.163 16 16v40c0 8.837-7.163 16-16 16H176c-8.837 0-16-7.163-16-16zM16 228h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 256h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm160-128h256c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H176c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"></path></svg><!-- <i class="fas fa-align-right" aria-hidden="true"></i> --><span class="fr-sr-only">Align Right</span></a></li><li role="presentation"><a class="fr-command fr-title" tabindex="-1" role="option" data-cmd="align" data-param1="justify" title="Align Justify" aria-selected="false"><svg class="svg-inline--fa fa-align-justify fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-justify" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M0 84V44c0-8.837 7.163-16 16-16h416c8.837 0 16 7.163 16 16v40c0 8.837-7.163 16-16 16H16c-8.837 0-16-7.163-16-16zm16 144h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 256h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0-128h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"></path></svg><!-- <i class="fas fa-align-justify" aria-hidden="true"></i> --><span class="fr-sr-only">Align Justify</span></a></li></ul></div></div></div><div class="fr-separator fr-hs" role="separator" aria-orientation="horizontal"></div><button id="emoticons-1" type="button" tabindex="-1" role="button" title="Emoticons" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="emoticons" data-popup="true" aria-disabled="false"><svg class="svg-inline--fa fa-smile fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="smile" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512" data-fa-i2svg=""><path fill="currentColor" d="M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm194.8 170.2C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.6-16.3 11-36.7 24.6-20.5 22.4 26.9 55.2 42.2 90.2 42.2s67.8-15.4 90.2-42.2c13.4-16.2 38.1 4.2 24.6 20.5z"></path></svg><!-- <i class="fas fa-smile" aria-hidden="true"></i> --><span class="fr-sr-only">Emoticons</span></button><button id="insertLink-1" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="insertLink" data-popup="true" aria-disabled="false"><svg class="svg-inline--fa fa-link fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="link" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"></path></svg><!-- <i class="fas fa-link" aria-hidden="true"></i> --><span class="fr-sr-only">Insert Link</span></button><button id="insertImage-1" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="insertImage" data-popup="true" aria-disabled="false"><svg class="svg-inline--fa fa-image fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="image" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z"></path></svg><!-- <i class="fas fa-image" aria-hidden="true"></i> --><span class="fr-sr-only">Insert Image</span></button><button id="undo-1" type="button" tabindex="-1" role="button" aria-disabled="true" class="fr-command fr-btn fr-btn-font_awesome_5 fr-disabled" data-cmd="undo"><svg class="svg-inline--fa fa-undo fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="undo" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M212.333 224.333H12c-6.627 0-12-5.373-12-12V12C0 5.373 5.373 0 12 0h48c6.627 0 12 5.373 12 12v78.112C117.773 39.279 184.26 7.47 258.175 8.007c136.906.994 246.448 111.623 246.157 248.532C504.041 393.258 393.12 504 256.333 504c-64.089 0-122.496-24.313-166.51-64.215-5.099-4.622-5.334-12.554-.467-17.42l33.967-33.967c4.474-4.474 11.662-4.717 16.401-.525C170.76 415.336 211.58 432 256.333 432c97.268 0 176-78.716 176-176 0-97.267-78.716-176-176-176-58.496 0-110.28 28.476-142.274 72.333h98.274c6.627 0 12 5.373 12 12v48c0 6.627-5.373 12-12 12z"></path></svg><!-- <i class="fas fa-undo" aria-hidden="true"></i> --><span class="fr-sr-only">Undo</span></button><button id="redo-1" type="button" tabindex="-1" role="button" aria-disabled="true" title="Redo (Ctrl+Shift+Z)" class="fr-command fr-btn fr-btn-font_awesome_5 fr-disabled" data-cmd="redo"><svg class="svg-inline--fa fa-redo fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="redo" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M500.333 0h-47.411c-6.853 0-12.314 5.729-11.986 12.574l3.966 82.759C399.416 41.899 331.672 8 256.001 8 119.34 8 7.899 119.526 8 256.187 8.101 393.068 119.096 504 256 504c63.926 0 122.202-24.187 166.178-63.908 5.113-4.618 5.354-12.561.482-17.433l-33.971-33.971c-4.466-4.466-11.64-4.717-16.38-.543C341.308 415.448 300.606 432 256 432c-97.267 0-176-78.716-176-176 0-97.267 78.716-176 176-176 60.892 0 114.506 30.858 146.099 77.8l-101.525-4.865c-6.845-.328-12.574 5.133-12.574 11.986v47.411c0 6.627 5.373 12 12 12h200.333c6.627 0 12-5.373 12-12V12c0-6.627-5.373-12-12-12z"></path></svg><!-- <i class="fas fa-redo" aria-hidden="true"></i> --><span class="fr-sr-only">Redo</span></button></div> <div class="fr-tooltip" style="left: -3000px; top: 2275px; position: fixed;">Paragraph Format</div> <div class="fr-image-overlay" style="display: none;"></div> <div class="fr-toolbar fr-desktop fr-inline fr-above" style="z-index: 10001; display: none; top: 1384.8px; left: 10px;"><span class="fr-arrow" style="margin-left: -46px;"></span><button id="bold-28" type="button" tabindex="-1" role="button" aria-pressed="false" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="bold" aria-disabled="false"><svg class="svg-inline--fa fa-bold fa-w-12" aria-hidden="true" data-prefix="fas" data-icon="bold" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" data-fa-i2svg=""><path fill="currentColor" d="M304.793 243.891c33.639-18.537 53.657-54.16 53.657-95.693 0-48.236-26.25-87.626-68.626-104.179C265.138 34.01 240.849 32 209.661 32H24c-8.837 0-16 7.163-16 16v33.049c0 8.837 7.163 16 16 16h33.113v318.53H24c-8.837 0-16 7.163-16 16V464c0 8.837 7.163 16 16 16h195.69c24.203 0 44.834-1.289 66.866-7.584C337.52 457.193 376 410.647 376 350.014c0-52.168-26.573-91.684-71.207-106.123zM142.217 100.809h67.444c16.294 0 27.536 2.019 37.525 6.717 15.828 8.479 24.906 26.502 24.906 49.446 0 35.029-20.32 56.79-53.029 56.79h-76.846V100.809zm112.642 305.475c-10.14 4.056-22.677 4.907-31.409 4.907h-81.233V281.943h84.367c39.645 0 63.057 25.38 63.057 63.057.001 28.425-13.66 52.483-34.782 61.284z"></path></svg><!-- <i class="fas fa-bold" aria-hidden="true"></i> --><span class="fr-sr-only">Bold</span></button><button id="italic-28" type="button" tabindex="-1" role="button" aria-pressed="false" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="italic" aria-disabled="false"><svg class="svg-inline--fa fa-italic fa-w-10" aria-hidden="true" data-prefix="fas" data-icon="italic" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" data-fa-i2svg=""><path fill="currentColor" d="M204.758 416h-33.849l62.092-320h40.725a16 16 0 0 0 15.704-12.937l6.242-32C297.599 41.184 290.034 32 279.968 32H120.235a16 16 0 0 0-15.704 12.937l-6.242 32C96.362 86.816 103.927 96 113.993 96h33.846l-62.09 320H46.278a16 16 0 0 0-15.704 12.935l-6.245 32C22.402 470.815 29.967 480 40.034 480h158.479a16 16 0 0 0 15.704-12.935l6.245-32c1.927-9.88-5.638-19.065-15.704-19.065z"></path></svg><!-- <i class="fas fa-italic" aria-hidden="true"></i> --><span class="fr-sr-only">Italic</span></button><button id="color-28" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="color" data-popup="true" aria-disabled="false"><svg class="svg-inline--fa fa-tint fa-w-11" aria-hidden="true" data-prefix="fas" data-icon="tint" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 352 512" data-fa-i2svg=""><path fill="currentColor" d="M205.22 22.09c-7.94-28.78-49.44-30.12-58.44 0C100.01 179.85 0 222.72 0 333.91 0 432.35 78.72 512 176 512s176-79.65 176-178.09c0-111.75-99.79-153.34-146.78-311.82zM176 448c-61.75 0-112-50.25-112-112 0-8.84 7.16-16 16-16s16 7.16 16 16c0 44.11 35.89 80 80 80 8.84 0 16 7.16 16 16s-7.16 16-16 16z"></path></svg><!-- <i class="fas fa-tint" aria-hidden="true"></i> --><span class="fr-sr-only">Colors</span></button><button id="paragraphFormat-28" type="button" tabindex="-1" role="button" aria-controls="dropdown-menu-paragraphFormat-28" aria-expanded="false" aria-haspopup="true" class="fr-command fr-btn fr-dropdown fr-btn-font_awesome_5 fr-selection" data-cmd="paragraphFormat" aria-disabled="false"><svg class="svg-inline--fa fa-paragraph fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="paragraph" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M408 32H177.531C88.948 32 16.045 103.335 16 191.918 15.956 280.321 87.607 352 176 352v104c0 13.255 10.745 24 24 24h32c13.255 0 24-10.745 24-24V112h32v344c0 13.255 10.745 24 24 24h32c13.255 0 24-10.745 24-24V112h40c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24z"></path></svg><!-- <i class="fas fa-paragraph" aria-hidden="true"></i> --><span class="fr-sr-only">Paragraph Format</span></button><div id="dropdown-menu-paragraphFormat-28" class="fr-dropdown-menu" role="listbox" aria-labelledby="paragraphFormat-28" aria-hidden="true" style="left: 130px; top: 38px;"><div class="fr-dropdown-wrapper" role="presentation"><div class="fr-dropdown-content" role="presentation"><ul class="fr-dropdown-list" role="presentation"><li role="presentation"><p style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command fr-active" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="N" title="Normal" aria-selected="true">Normal</a></p></li><li role="presentation"><h1 style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="H1" title="Heading 1" aria-selected="false">Heading 1</a></h1></li><li role="presentation"><h2 style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="H2" title="Heading 2" aria-selected="false">Heading 2</a></h2></li><li role="presentation"><h3 style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="H3" title="Heading 3" aria-selected="false">Heading 3</a></h3></li><li role="presentation"><h4 style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="H4" title="Heading 4" aria-selected="false">Heading 4</a></h4></li><li role="presentation"><pre style="padding: 0 !important; margin: 0 !important;" role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="paragraphFormat" data-param1="PRE" title="Code" aria-selected="false">Code</a></pre></li></ul></div></div></div><button id="align-28" type="button" tabindex="-1" role="button" aria-controls="dropdown-menu-align-28" aria-expanded="false" aria-haspopup="true" class="fr-command fr-btn fr-dropdown fr-btn-font_awesome_5" data-cmd="align" aria-disabled="false"><svg class="svg-inline--fa fa-align-left fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-left" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M288 44v40c0 8.837-7.163 16-16 16H16c-8.837 0-16-7.163-16-16V44c0-8.837 7.163-16 16-16h256c8.837 0 16 7.163 16 16zM0 172v40c0 8.837 7.163 16 16 16h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16zm16 312h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm256-200H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16h256c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16z"></path></svg><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><span class="fr-sr-only">Align</span></button><div id="dropdown-menu-align-28" class="fr-dropdown-menu" role="listbox" aria-labelledby="align-28" aria-hidden="true"><div class="fr-dropdown-wrapper" role="presentation"><div class="fr-dropdown-content" role="presentation"><ul class="fr-dropdown-list" role="presentation"><li role="presentation"><a class="fr-command fr-title" tabindex="-1" role="option" data-cmd="align" data-param1="left" title="Align Left"><svg class="svg-inline--fa fa-align-left fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-left" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M288 44v40c0 8.837-7.163 16-16 16H16c-8.837 0-16-7.163-16-16V44c0-8.837 7.163-16 16-16h256c8.837 0 16 7.163 16 16zM0 172v40c0 8.837 7.163 16 16 16h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16zm16 312h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm256-200H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16h256c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16z"></path></svg><!-- <i class="fas fa-align-left" aria-hidden="true"></i> --><span class="fr-sr-only">Align Left</span></a></li><li role="presentation"><a class="fr-command fr-title" tabindex="-1" role="option" data-cmd="align" data-param1="center" title="Align Center"><svg class="svg-inline--fa fa-align-center fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-center" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M352 44v40c0 8.837-7.163 16-16 16H112c-8.837 0-16-7.163-16-16V44c0-8.837 7.163-16 16-16h224c8.837 0 16 7.163 16 16zM16 228h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 256h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm320-200H112c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16h224c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16z"></path></svg><!-- <i class="fas fa-align-center" aria-hidden="true"></i> --><span class="fr-sr-only">Align Center</span></a></li><li role="presentation"><a class="fr-command fr-title" tabindex="-1" role="option" data-cmd="align" data-param1="right" title="Align Right"><svg class="svg-inline--fa fa-align-right fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M160 84V44c0-8.837 7.163-16 16-16h256c8.837 0 16 7.163 16 16v40c0 8.837-7.163 16-16 16H176c-8.837 0-16-7.163-16-16zM16 228h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 256h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm160-128h256c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H176c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"></path></svg><!-- <i class="fas fa-align-right" aria-hidden="true"></i> --><span class="fr-sr-only">Align Right</span></a></li><li role="presentation"><a class="fr-command fr-title" tabindex="-1" role="option" data-cmd="align" data-param1="justify" title="Align Justify"><svg class="svg-inline--fa fa-align-justify fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="align-justify" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M0 84V44c0-8.837 7.163-16 16-16h416c8.837 0 16 7.163 16 16v40c0 8.837-7.163 16-16 16H16c-8.837 0-16-7.163-16-16zm16 144h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 256h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0-128h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"></path></svg><!-- <i class="fas fa-align-justify" aria-hidden="true"></i> --><span class="fr-sr-only">Align Justify</span></a></li></ul></div></div></div><div class="fr-separator fr-hs" role="separator" aria-orientation="horizontal"></div><button id="emoticons-28" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="emoticons" data-popup="true" aria-disabled="false"><svg class="svg-inline--fa fa-smile fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="smile" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512" data-fa-i2svg=""><path fill="currentColor" d="M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm194.8 170.2C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.6-16.3 11-36.7 24.6-20.5 22.4 26.9 55.2 42.2 90.2 42.2s67.8-15.4 90.2-42.2c13.4-16.2 38.1 4.2 24.6 20.5z"></path></svg><!-- <i class="fas fa-smile" aria-hidden="true"></i> --><span class="fr-sr-only">Emoticons</span></button><button id="insertLink-28" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="insertLink" data-popup="true" aria-disabled="false"><svg class="svg-inline--fa fa-link fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="link" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"></path></svg><!-- <i class="fas fa-link" aria-hidden="true"></i> --><span class="fr-sr-only">Insert Link</span></button><button id="insertImage-28" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="insertImage" data-popup="true" aria-disabled="false"><svg class="svg-inline--fa fa-image fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="image" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z"></path></svg><!-- <i class="fas fa-image" aria-hidden="true"></i> --><span class="fr-sr-only">Insert Image</span></button><button id="undo-28" type="button" tabindex="-1" role="button" aria-disabled="false" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="undo"><svg class="svg-inline--fa fa-undo fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="undo" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M212.333 224.333H12c-6.627 0-12-5.373-12-12V12C0 5.373 5.373 0 12 0h48c6.627 0 12 5.373 12 12v78.112C117.773 39.279 184.26 7.47 258.175 8.007c136.906.994 246.448 111.623 246.157 248.532C504.041 393.258 393.12 504 256.333 504c-64.089 0-122.496-24.313-166.51-64.215-5.099-4.622-5.334-12.554-.467-17.42l33.967-33.967c4.474-4.474 11.662-4.717 16.401-.525C170.76 415.336 211.58 432 256.333 432c97.268 0 176-78.716 176-176 0-97.267-78.716-176-176-176-58.496 0-110.28 28.476-142.274 72.333h98.274c6.627 0 12 5.373 12 12v48c0 6.627-5.373 12-12 12z"></path></svg><!-- <i class="fas fa-undo" aria-hidden="true"></i> --><span class="fr-sr-only">Undo</span></button><button id="redo-28" type="button" tabindex="-1" role="button" aria-disabled="true" title="Redo (Ctrl+Shift+Z)" class="fr-command fr-btn fr-btn-font_awesome_5 fr-disabled" data-cmd="redo"><svg class="svg-inline--fa fa-redo fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="redo" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M500.333 0h-47.411c-6.853 0-12.314 5.729-11.986 12.574l3.966 82.759C399.416 41.899 331.672 8 256.001 8 119.34 8 7.899 119.526 8 256.187 8.101 393.068 119.096 504 256 504c63.926 0 122.202-24.187 166.178-63.908 5.113-4.618 5.354-12.561.482-17.433l-33.971-33.971c-4.466-4.466-11.64-4.717-16.38-.543C341.308 415.448 300.606 432 256 432c-97.267 0-176-78.716-176-176 0-97.267 78.716-176 176-176 60.892 0 114.506 30.858 146.099 77.8l-101.525-4.865c-6.845-.328-12.574 5.133-12.574 11.986v47.411c0 6.627 5.373 12 12 12h200.333c6.627 0 12-5.373 12-12V12c0-6.627-5.373-12-12-12z"></path></svg><!-- <i class="fas fa-redo" aria-hidden="true"></i> --><span class="fr-sr-only">Redo</span></button></div> <div class="fr-image-overlay" style="display: none;"></div> <div class="fr-tooltip" style="left: -3000px; top: 1093px; position: fixed;">Paragraph Format</div> <div class="fr-popup fr-desktop fr-inline" style="z-index: 10004; left: 1039.61px; top: 1131.8px;"><span class="fr-arrow" style="margin-left: -5px;"></span><div class="fr-buttons"><button id="linkEdit-9" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="linkEdit" data-popup="true"><svg class="svg-inline--fa fa-edit fa-w-18" aria-hidden="true" data-prefix="fas" data-icon="edit" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" data-fa-i2svg=""><path fill="currentColor" d="M402.6 83.2l90.2 90.2c3.8 3.8 3.8 10 0 13.8L274.4 405.6l-92.8 10.3c-12.4 1.4-22.9-9.1-21.5-21.5l10.3-92.8L388.8 83.2c3.8-3.8 10-3.8 13.8 0zm162-22.9l-48.8-48.8c-15.2-15.2-39.9-15.2-55.2 0l-35.4 35.4c-3.8 3.8-3.8 10 0 13.8l90.2 90.2c3.8 3.8 10 3.8 13.8 0l35.4-35.4c15.2-15.3 15.2-40 0-55.2zM384 346.2V448H64V128h229.8c3.2 0 6.2-1.3 8.5-3.5l40-40c7.6-7.6 2.2-20.5-8.5-20.5H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V306.2c0-10.7-12.9-16-20.5-8.5l-40 40c-2.2 2.3-3.5 5.3-3.5 8.5z"></path></svg><!-- <i class="fas fa-edit" aria-hidden="true"></i> --><span class="fr-sr-only">Edit Link</span></button><button id="linkButton-9" type="button" tabindex="-1" role="button" aria-controls="dropdown-menu-linkButton-9" aria-expanded="false" aria-haspopup="true" title="Choose Style" class="fr-command fr-btn fr-dropdown fr-btn-font_awesome_5" data-cmd="linkButton"><svg class="svg-inline--fa fa-star fa-w-18" aria-hidden="true" data-prefix="fas" data-icon="star" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" data-fa-i2svg=""><path fill="currentColor" d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z"></path></svg><!-- <i class="fas fa-star" aria-hidden="true"></i> --><span class="fr-sr-only">Choose Style</span></button><div id="dropdown-menu-linkButton-9" class="fr-dropdown-menu" role="listbox" aria-labelledby="linkButton-9" aria-hidden="true"><div class="fr-dropdown-wrapper" role="presentation"><div class="fr-dropdown-content" role="presentation"><ul class="fr-dropdown-list" role="presentation"><li role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="linkButton" data-param1="link" title="Link">Link</a></li><li role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="linkButton" data-param1="button" title="Button">Button</a></li><li role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="linkButton" data-param1="outline" title="Outline">Outline</a></li></ul></div></div></div><button id="linkRemove-9" type="button" tabindex="-1" role="button" title="Unlink" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="linkRemove"><svg class="svg-inline--fa fa-unlink fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="unlink" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M304.083 405.907c4.686 4.686 4.686 12.284 0 16.971l-44.674 44.674c-59.263 59.262-155.693 59.266-214.961 0-59.264-59.265-59.264-155.696 0-214.96l44.675-44.675c4.686-4.686 12.284-4.686 16.971 0l39.598 39.598c4.686 4.686 4.686 12.284 0 16.971l-44.675 44.674c-28.072 28.073-28.072 73.75 0 101.823 28.072 28.072 73.75 28.073 101.824 0l44.674-44.674c4.686-4.686 12.284-4.686 16.971 0l39.597 39.598zm-56.568-260.216c4.686 4.686 12.284 4.686 16.971 0l44.674-44.674c28.072-28.075 73.75-28.073 101.824 0 28.072 28.073 28.072 73.75 0 101.823l-44.675 44.674c-4.686 4.686-4.686 12.284 0 16.971l39.598 39.598c4.686 4.686 12.284 4.686 16.971 0l44.675-44.675c59.265-59.265 59.265-155.695 0-214.96-59.266-59.264-155.695-59.264-214.961 0l-44.674 44.674c-4.686 4.686-4.686 12.284 0 16.971l39.597 39.598zm234.828 359.28l22.627-22.627c9.373-9.373 9.373-24.569 0-33.941L63.598 7.029c-9.373-9.373-24.569-9.373-33.941 0L7.029 29.657c-9.373 9.373-9.373 24.569 0 33.941l441.373 441.373c9.373 9.372 24.569 9.372 33.941 0z"></path></svg><!-- <i class="fas fa-unlink" aria-hidden="true"></i> --><span class="fr-sr-only">Unlink</span></button></div></div> <div class="fr-popup fr-desktop fr-inline" style="z-index: 10004; left: 1126.5px; top: 963.797px;"><span class="fr-arrow" style="margin-left: -5px;"></span><div class="fr-buttons"><button id="imageReplace-2" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="imageReplace" data-popup="true"><svg class="svg-inline--fa fa-exchange-alt fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="exchange-alt" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M0 168v-16c0-13.255 10.745-24 24-24h360V80c0-21.367 25.899-32.042 40.971-16.971l80 80c9.372 9.373 9.372 24.569 0 33.941l-80 80C409.956 271.982 384 261.456 384 240v-48H24c-13.255 0-24-10.745-24-24zm488 152H128v-48c0-21.314-25.862-32.08-40.971-16.971l-80 80c-9.372 9.373-9.372 24.569 0 33.941l80 80C102.057 463.997 128 453.437 128 432v-48h360c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24z"></path></svg><!-- <i class="fas fa-exchange-alt" aria-hidden="true"></i> --><span class="fr-sr-only">Replace</span></button></div></div> <div class="fr-popup fr-desktop fr-inline" style="z-index: 10004; left: 989.5px; top: 851.797px;"><span class="fr-arrow" style="margin-left: -5px;"></span><div class="fr-buttons" style=""><button id="imageBack-2" type="button" tabindex="-1" role="button" title="Back" class="fr-command fr-btn fr-btn-font_awesome_5 fr-back" data-cmd="imageBack"><svg class="svg-inline--fa fa-arrow-left fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="arrow-left" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"></path></svg><!-- <i class="fas fa-arrow-left" aria-hidden="true"></i> --><span class="fr-sr-only">Back</span></button><div class="fr-separator fr-vs" role="separator" aria-orientation="vertical"></div><button id="imageUpload-2" type="button" tabindex="-1" role="button" aria-pressed="true" title="Upload Image" class="fr-command fr-btn fr-btn-font_awesome_5 fr-active" data-cmd="imageUpload"><svg class="svg-inline--fa fa-upload fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="upload" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M296 384h-80c-13.3 0-24-10.7-24-24V192h-87.7c-17.8 0-26.7-21.5-14.1-34.1L242.3 5.7c7.5-7.5 19.8-7.5 27.3 0l152.2 152.2c12.6 12.6 3.7 34.1-14.1 34.1H320v168c0 13.3-10.7 24-24 24zm216-8v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h136v8c0 30.9 25.1 56 56 56h80c30.9 0 56-25.1 56-56v-8h136c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path></svg><!-- <i class="fas fa-upload" aria-hidden="true"></i> --><span class="fr-sr-only">Upload Image</span></button><button id="imageByURL-2" type="button" tabindex="-1" role="button" aria-pressed="false" title="By URL" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="imageByURL"><svg class="svg-inline--fa fa-link fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="link" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"></path></svg><!-- <i class="fas fa-link" aria-hidden="true"></i> --><span class="fr-sr-only">By URL</span></button></div><div class="fr-image-upload-layer fr-layer fr-active" id="fr-image-upload-layer-2"><strong>Drop image</strong><br>(or click)<div class="fr-form"><input type="file" accept="image/jpeg, image/jpg, image/png, image/gif" tabindex="-1" aria-labelledby="fr-image-upload-layer-2" role="button" dir="auto" class="fr-not-empty" disabled="disabled"></div></div><div class="fr-image-by-url-layer fr-layer" id="fr-image-by-url-layer-2"><div class="fr-input-line"><input id="fr-image-by-url-layer-text-2" type="text" placeholder="http://" tabindex="1" aria-required="true" dir="auto" class="fr-not-empty" disabled="disabled"><label for="fr-image-by-url-layer-text-2">http://</label></div><div class="fr-action-buttons"><button type="button" class="fr-command fr-submit" data-cmd="imageInsertByURL" tabindex="2" role="button">Replace</button></div></div><div class="fr-image-progress-bar-layer fr-layer"><h3 tabindex="-1" class="fr-message">Loading image</h3><div class="fr-loader fr-indeterminate"><span class="fr-progress"></span></div><div class="fr-action-buttons fr-indeterminate"><button type="button" class="fr-command fr-dismiss" data-cmd="imageDismissError" tabindex="2" role="button">OK</button></div></div></div> <div class="fr-popup fr-desktop fr-inline" style="z-index: 10004; left: 562.5px; top: 166.797px;"><span class="fr-arrow" style="margin-left: -5px;"></span><div class="fr-buttons fr-colors-buttons"><button id="colorsBack-1" type="button" tabindex="-1" role="button" title="Back" class="fr-command fr-btn fr-btn-font_awesome_5 fr-back" data-cmd="colorsBack"><svg class="svg-inline--fa fa-arrow-left fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="arrow-left" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"></path></svg><!-- <i class="fas fa-arrow-left" aria-hidden="true"></i> --><span class="fr-sr-only">Back</span></button><div class="fr-separator fr-vs" role="separator" aria-orientation="vertical"></div><div class="fr-separator fr-hs" role="separator" aria-orientation="horizontal"></div><div class="fr-colors-tabs fr-group"><span class="fr-colors-tab fr-selected-tab fr-command" tabindex="-1" role="button" aria-pressed="true" data-param1="text" data-cmd="colorChangeSet" title="Text">Text</span><span class="fr-colors-tab fr-command" tabindex="-1" role="button" aria-pressed="false" data-param1="background" data-cmd="colorChangeSet" title="Background">Background</span></div></div><div class="fr-color-set fr-text-color fr-selected-set"><span class="fr-command fr-select-color" style="background: #61BD6D;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#61BD6D"><span class="fr-sr-only">Color #61BD6D </span></span><span class="fr-command fr-select-color" style="background: #1ABC9C;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#1ABC9C"><span class="fr-sr-only">Color #1ABC9C </span></span><span class="fr-command fr-select-color" style="background: #54ACD2;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#54ACD2"><span class="fr-sr-only">Color #54ACD2 </span></span><span class="fr-command fr-select-color" style="background: #2C82C9;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#2C82C9"><span class="fr-sr-only">Color #2C82C9 </span></span><span class="fr-command fr-select-color" style="background: #9365B8;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#9365B8"><span class="fr-sr-only">Color #9365B8 </span></span><span class="fr-command fr-select-color" style="background: #475577;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#475577"><span class="fr-sr-only">Color #475577 </span></span><span class="fr-command fr-select-color" style="background: #CCCCCC;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#CCCCCC"><span class="fr-sr-only">Color #CCCCCC </span></span><br><span class="fr-command fr-select-color" style="background: #41A85F;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#41A85F"><span class="fr-sr-only">Color #41A85F </span></span><span class="fr-command fr-select-color" style="background: #00A885;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#00A885"><span class="fr-sr-only">Color #00A885 </span></span><span class="fr-command fr-select-color" style="background: #3D8EB9;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#3D8EB9"><span class="fr-sr-only">Color #3D8EB9 </span></span><span class="fr-command fr-select-color" style="background: #2969B0;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#2969B0"><span class="fr-sr-only">Color #2969B0 </span></span><span class="fr-command fr-select-color" style="background: #553982;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#553982"><span class="fr-sr-only">Color #553982 </span></span><span class="fr-command fr-select-color" style="background: #28324E;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#28324E"><span class="fr-sr-only">Color #28324E </span></span><span class="fr-command fr-select-color" style="background: #000000;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#000000"><span class="fr-sr-only">Color #000000 </span></span><br><span class="fr-command fr-select-color" style="background: #F7DA64;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#F7DA64"><span class="fr-sr-only">Color #F7DA64 </span></span><span class="fr-command fr-select-color" style="background: #FBA026;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#FBA026"><span class="fr-sr-only">Color #FBA026 </span></span><span class="fr-command fr-select-color" style="background: #EB6B56;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#EB6B56"><span class="fr-sr-only">Color #EB6B56 </span></span><span class="fr-command fr-select-color" style="background: #E25041;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#E25041"><span class="fr-sr-only">Color #E25041 </span></span><span class="fr-command fr-select-color" style="background: #A38F84;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#A38F84"><span class="fr-sr-only">Color #A38F84 </span></span><span class="fr-command fr-select-color" style="background: #EFEFEF;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#EFEFEF"><span class="fr-sr-only">Color #EFEFEF </span></span><span class="fr-command fr-select-color" style="background: #FFFFFF;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#FFFFFF"><span class="fr-sr-only">Color #FFFFFF </span></span><br><span class="fr-command fr-select-color" style="background: #FAC51C;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#FAC51C"><span class="fr-sr-only">Color #FAC51C </span></span><span class="fr-command fr-select-color" style="background: #F37934;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#F37934"><span class="fr-sr-only">Color #F37934 </span></span><span class="fr-command fr-select-color" style="background: #D14841;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#D14841"><span class="fr-sr-only">Color #D14841 </span></span><span class="fr-command fr-select-color" style="background: #B8312F;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#B8312F"><span class="fr-sr-only">Color #B8312F </span></span><span class="fr-command fr-select-color" style="background: #7C706B;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#7C706B"><span class="fr-sr-only">Color #7C706B </span></span><span class="fr-command fr-select-color" style="background: #D1D5D8;" tabindex="-1" aria-selected="false" role="button" data-cmd="textColor" data-param1="#D1D5D8"><span class="fr-sr-only">Color #D1D5D8 </span></span><span class="fr-command fr-select-color" data-cmd="textColor" tabindex="-1" role="button" data-param1="REMOVE" title="Clear Formatting"><svg class="svg-inline--fa fa-eraser fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="eraser" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M497.941 273.941c18.745-18.745 18.745-49.137 0-67.882l-160-160c-18.745-18.745-49.136-18.746-67.883 0l-256 256c-18.745 18.745-18.745 49.137 0 67.882l96 96A48.004 48.004 0 0 0 144 480h356c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12H355.883l142.058-142.059zm-302.627-62.627l137.373 137.373L265.373 416H150.628l-80-80 124.686-124.686z"></path></svg><!-- <i class="fas fa-eraser" aria-hidden="true"></i> --><span class="fr-sr-only">Clear Formatting</span></span></div><div class="fr-color-set fr-background-color"><span class="fr-command fr-select-color" style="background: #61BD6D;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#61BD6D"><span class="fr-sr-only">Color #61BD6D </span></span><span class="fr-command fr-select-color" style="background: #1ABC9C;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#1ABC9C"><span class="fr-sr-only">Color #1ABC9C </span></span><span class="fr-command fr-select-color" style="background: #54ACD2;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#54ACD2"><span class="fr-sr-only">Color #54ACD2 </span></span><span class="fr-command fr-select-color" style="background: #2C82C9;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#2C82C9"><span class="fr-sr-only">Color #2C82C9 </span></span><span class="fr-command fr-select-color" style="background: #9365B8;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#9365B8"><span class="fr-sr-only">Color #9365B8 </span></span><span class="fr-command fr-select-color" style="background: #475577;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#475577"><span class="fr-sr-only">Color #475577 </span></span><span class="fr-command fr-select-color" style="background: #CCCCCC;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#CCCCCC"><span class="fr-sr-only">Color #CCCCCC </span></span><br><span class="fr-command fr-select-color" style="background: #41A85F;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#41A85F"><span class="fr-sr-only">Color #41A85F </span></span><span class="fr-command fr-select-color" style="background: #00A885;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#00A885"><span class="fr-sr-only">Color #00A885 </span></span><span class="fr-command fr-select-color" style="background: #3D8EB9;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#3D8EB9"><span class="fr-sr-only">Color #3D8EB9 </span></span><span class="fr-command fr-select-color" style="background: #2969B0;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#2969B0"><span class="fr-sr-only">Color #2969B0 </span></span><span class="fr-command fr-select-color" style="background: #553982;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#553982"><span class="fr-sr-only">Color #553982 </span></span><span class="fr-command fr-select-color" style="background: #28324E;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#28324E"><span class="fr-sr-only">Color #28324E </span></span><span class="fr-command fr-select-color" style="background: #000000;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#000000"><span class="fr-sr-only">Color #000000 </span></span><br><span class="fr-command fr-select-color" style="background: #F7DA64;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#F7DA64"><span class="fr-sr-only">Color #F7DA64 </span></span><span class="fr-command fr-select-color" style="background: #FBA026;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#FBA026"><span class="fr-sr-only">Color #FBA026 </span></span><span class="fr-command fr-select-color" style="background: #EB6B56;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#EB6B56"><span class="fr-sr-only">Color #EB6B56 </span></span><span class="fr-command fr-select-color" style="background: #E25041;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#E25041"><span class="fr-sr-only">Color #E25041 </span></span><span class="fr-command fr-select-color" style="background: #A38F84;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#A38F84"><span class="fr-sr-only">Color #A38F84 </span></span><span class="fr-command fr-select-color" style="background: #EFEFEF;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#EFEFEF"><span class="fr-sr-only">Color #EFEFEF </span></span><span class="fr-command fr-select-color" style="background: #FFFFFF;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#FFFFFF"><span class="fr-sr-only">Color #FFFFFF </span></span><br><span class="fr-command fr-select-color" style="background: #FAC51C;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#FAC51C"><span class="fr-sr-only">Color #FAC51C </span></span><span class="fr-command fr-select-color" style="background: #F37934;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#F37934"><span class="fr-sr-only">Color #F37934 </span></span><span class="fr-command fr-select-color" style="background: #D14841;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#D14841"><span class="fr-sr-only">Color #D14841 </span></span><span class="fr-command fr-select-color" style="background: #B8312F;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#B8312F"><span class="fr-sr-only">Color #B8312F </span></span><span class="fr-command fr-select-color" style="background: #7C706B;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#7C706B"><span class="fr-sr-only">Color #7C706B </span></span><span class="fr-command fr-select-color" style="background: #D1D5D8;" tabindex="-1" aria-selected="false" role="button" data-cmd="backgroundColor" data-param1="#D1D5D8"><span class="fr-sr-only">Color #D1D5D8 </span></span><span class="fr-command fr-select-color" data-cmd="backgroundColor" tabindex="-1" role="button" data-param1="REMOVE" title="Clear Formatting"><svg class="svg-inline--fa fa-eraser fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="eraser" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M497.941 273.941c18.745-18.745 18.745-49.137 0-67.882l-160-160c-18.745-18.745-49.136-18.746-67.883 0l-256 256c-18.745 18.745-18.745 49.137 0 67.882l96 96A48.004 48.004 0 0 0 144 480h356c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12H355.883l142.058-142.059zm-302.627-62.627l137.373 137.373L265.373 416H150.628l-80-80 124.686-124.686z"></path></svg><!-- <i class="fas fa-eraser" aria-hidden="true"></i> --><span class="fr-sr-only">Clear Formatting</span></span></div></div> <div class="fr-popup fr-desktop fr-inline" style="z-index: 10004; left: 989.5px; top: 953.297px;"><span class="fr-arrow" style="margin-left: -5px;"></span><div class="fr-buttons" style=""><button id="imageBack-28" type="button" tabindex="-1" role="button" title="Back" class="fr-command fr-btn fr-btn-font_awesome_5 fr-back" data-cmd="imageBack"><svg class="svg-inline--fa fa-arrow-left fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="arrow-left" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"></path></svg><!-- <i class="fas fa-arrow-left" aria-hidden="true"></i> --><span class="fr-sr-only">Back</span></button><div class="fr-separator fr-vs" role="separator" aria-orientation="vertical"></div><button id="imageUpload-28" type="button" tabindex="-1" role="button" aria-pressed="true" class="fr-command fr-btn fr-btn-font_awesome_5 fr-active" data-cmd="imageUpload"><svg class="svg-inline--fa fa-upload fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="upload" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M296 384h-80c-13.3 0-24-10.7-24-24V192h-87.7c-17.8 0-26.7-21.5-14.1-34.1L242.3 5.7c7.5-7.5 19.8-7.5 27.3 0l152.2 152.2c12.6 12.6 3.7 34.1-14.1 34.1H320v168c0 13.3-10.7 24-24 24zm216-8v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h136v8c0 30.9 25.1 56 56 56h80c30.9 0 56-25.1 56-56v-8h136c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"></path></svg><!-- <i class="fas fa-upload" aria-hidden="true"></i> --><span class="fr-sr-only">Upload Image</span></button><button id="imageByURL-28" type="button" tabindex="-1" role="button" aria-pressed="false" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="imageByURL"><svg class="svg-inline--fa fa-link fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="link" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"></path></svg><!-- <i class="fas fa-link" aria-hidden="true"></i> --><span class="fr-sr-only">By URL</span></button></div><div class="fr-image-upload-layer fr-layer fr-active" id="fr-image-upload-layer-28"><strong>Drop image</strong><br>(or click)<div class="fr-form"><input type="file" accept="image/jpeg, image/jpg, image/png, image/gif" tabindex="-1" aria-labelledby="fr-image-upload-layer-28" role="button" dir="auto" class="fr-not-empty" disabled="disabled"></div></div><div class="fr-image-by-url-layer fr-layer" id="fr-image-by-url-layer-28"><div class="fr-input-line"><input id="fr-image-by-url-layer-text-28" type="text" placeholder="http://" tabindex="1" aria-required="true" dir="auto" class="fr-not-empty" disabled="disabled"><label for="fr-image-by-url-layer-text-28">http://</label></div><div class="fr-action-buttons"><button type="button" class="fr-command fr-submit" data-cmd="imageInsertByURL" tabindex="2" role="button">Replace</button></div></div><div class="fr-image-progress-bar-layer fr-layer"><h3 tabindex="-1" class="fr-message">Loading image</h3><div class="fr-loader fr-indeterminate"><span class="fr-progress"></span></div><div class="fr-action-buttons fr-indeterminate"><button type="button" class="fr-command fr-dismiss" data-cmd="imageDismissError" tabindex="2" role="button">OK</button></div></div></div> <div class="fr-popup fr-desktop fr-inline" style="z-index: 10004; left: 1126.5px; top: 979.297px;"><span class="fr-arrow" style="margin-left: -5px;"></span><div class="fr-buttons"><button id="imageReplace-28" type="button" tabindex="-1" role="button" class="fr-command fr-btn fr-btn-font_awesome_5" data-cmd="imageReplace" data-popup="true"><svg class="svg-inline--fa fa-exchange-alt fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="exchange-alt" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M0 168v-16c0-13.255 10.745-24 24-24h360V80c0-21.367 25.899-32.042 40.971-16.971l80 80c9.372 9.373 9.372 24.569 0 33.941l-80 80C409.956 271.982 384 261.456 384 240v-48H24c-13.255 0-24-10.745-24-24zm488 152H128v-48c0-21.314-25.862-32.08-40.971-16.971l-80 80c-9.372 9.373-9.372 24.569 0 33.941l80 80C102.057 463.997 128 453.437 128 432v-48h360c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24z"></path></svg><!-- <i class="fas fa-exchange-alt" aria-hidden="true"></i> --><span class="fr-sr-only">Replace</span></button></div></div> <div class="fr-image-resizer" style="top: -1px; left: 4px; width: 150px; height: 150px;"><div class="fr-handler fr-hnw"></div><div class="fr-handler fr-hne"></div><div class="fr-handler fr-hsw"></div><div class="fr-handler fr-hse"></div></div> <div class="fr-popup fr-desktop fr-inline" style="z-index: 10004; left: 1005.5px; top: 2158.59px;"><span class="fr-arrow" style="margin-left: -5px;"></span><div class="fr-buttons"><button id="linkBack-19" type="button" tabindex="-1" role="button" title="Back" class="fr-command fr-btn fr-btn-font_awesome_5 fr-back" data-cmd="linkBack"><svg class="svg-inline--fa fa-arrow-left fa-w-14" aria-hidden="true" data-prefix="fas" data-icon="arrow-left" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"></path></svg><!-- <i class="fas fa-arrow-left" aria-hidden="true"></i> --><span class="fr-sr-only">Back</span></button><div class="fr-separator fr-vs" role="separator" aria-orientation="vertical"></div><button id="linkList-19" type="button" tabindex="-1" role="button" aria-controls="dropdown-menu-linkList-19" aria-expanded="false" aria-haspopup="true" title="Choose Link" class="fr-command fr-btn fr-dropdown fr-btn-font_awesome_5" data-cmd="linkList"><svg class="svg-inline--fa fa-search fa-w-16" aria-hidden="true" data-prefix="fas" data-icon="search" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"></path></svg><!-- <i class="fas fa-search" aria-hidden="true"></i> --><span class="fr-sr-only">Choose Link</span></button><div id="dropdown-menu-linkList-19" class="fr-dropdown-menu" role="listbox" aria-labelledby="linkList-19" aria-hidden="true"><div class="fr-dropdown-wrapper" role="presentation"><div class="fr-dropdown-content" role="presentation"><ul class="fr-dropdown-list" role="presentation"><li role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="linkList" data-param1="0">Froala</a></li><li role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="linkList" data-param1="1">Google</a></li><li role="presentation"><a class="fr-command" tabindex="-1" role="option" data-cmd="linkList" data-param1="2">Facebook</a></li></ul></div></div></div></div><div class="fr-link-insert-layer fr-layer fr-active" id="fr-link-insert-layer-19"><div class="fr-input-line"><input id="fr-link-insert-layer-url-19" name="href" type="text" class="fr-link-attr" placeholder="URL" tabindex="1" dir="auto" disabled="disabled"><label for="fr-link-insert-layer-url-19">URL</label></div><div class="fr-input-line"><input id="fr-link-insert-layer-text-19" name="text" type="text" class="fr-link-attr" placeholder="Text" tabindex="2" dir="auto" disabled="disabled"><label for="fr-link-insert-layer-text-19">Text</label></div><div class="fr-checkbox-line"><span class="fr-checkbox"><input name="target" class="fr-link-attr fr-not-empty" data-checked="_blank" type="checkbox" id="fr-link-target-19" tabindex="3" dir="auto" disabled="disabled"><span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="10" height="10" viewBox="0 0 32 32"><path d="M27 4l-15 15-7-7-5 5 12 12 20-20z" fill="#FFF"></path></svg></span></span><label for="fr-link-target-19">Open in new tab</label></div><div class="fr-action-buttons"><button class="fr-command fr-submit" role="button" data-cmd="linkInsert" href="#" tabindex="4" type="button">Insert</button></div></div></div> </body> </html>
Leandropesao / Boooot// Generated by CoffeeScript 1.6.2 (function() { var Command, RoomHelper, User, addCommand, afkCheck, afksCommand, allAfksCommand, announceCurate, antispam, apiHooks, avgVoteRatioCommand, chatCommandDispatcher, chatUniversals, cmds, data, dieCommand, disconnectLookupCommand, fans, handleNewSong, handleUserJoin, handleUserLeave, handleVote, hook, initEnvironment, initHooks, initialize, lockCommand, lockskipCommand, msToStr, newSongsCommand, newsCommand, populateUserData, channelCommand, pupOnline, reloadCommand, removeCommand, roomHelpCommand, rulesCommand, settings, skipCommand, staffCommand, statusCommand, themeCommand, undoHooks, unhook, unlockCommand, updateVotes, versionCommand, voteRatioCommand, ref, _ref1, _ref10, _ref11, _ref12, _ref13, _ref14, _ref15, _ref16, _ref17, _ref18, _ref19, _ref2, _ref20, _ref21, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8, _ref9, __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; }, __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }, __hasProp = {}.hasOwnProperty, __extends = function(child, parent) { for (var key in parent) { if (_hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }; settings = (function() { function settings() { this.implode = __bind(this.implode, this); this.intervalMessages = __bind(this.intervalMessages, this); this.startAfkInterval = __bind(this.startAfkInterval, this); this.setInternalWaitlist = __bind(this.setInternalWaitlist, this); this.userJoin = __bind(this.userJoin, this); this.getRoomUrlPath = __bind(this.getRoomUrlPath, this); this.startup = __bind(this.startup, this); } settings.prototype.currentsong = {}; settings.prototype.users = {}; settings.prototype.djs = []; settings.prototype.mods = []; settings.prototype.host = []; settings.prototype.hasWarned = false; settings.prototype.currentwoots = 0; settings.prototype.currentmehs = 0; settings.prototype.currentcurates = 0; settings.prototype.roomUrlPath = null; settings.prototype.internalWaitlist = []; settings.prototype.userDisconnectLog = []; settings.prototype.voteLog = {}; settings.prototype.seshOn = false; settings.prototype.forceSkip = false; settings.prototype.seshMembers = []; settings.prototype.launchTime = null; settings.prototype.totalVotingData = { woots: 0, mehs: 0, curates: 0 }; settings.prototype.pupScriptUrl = 'https://dl.dropbox.com/u/21023321/TastycatBot.js'; settings.prototype.afkTime = 666 * 60 * 1000; settings.prototype.songIntervalMessages = [ { interval: 7, offset: 0, msg: "Entrem na nossa pagina: http://www.facebook.com/EspecialistasDasZoeiras?ref=hl" }, { interval: 5, offset: 0, msg: "Mantenha-se ativo no bate-papo e Votando. Ser não sera Retirado da Lista de DJ e da Cabine!" } ]; settings.prototype.songCount = 0; settings.prototype.startup = function() { this.launchTime = new Date(); return this.roomUrlPath = this.getRoomUrlPath(); }; settings.prototype.getRoomUrlPath = function() { return window.location.pathname.replace(/\//g, ''); }; settings.prototype.newSong = function() { this.totalVotingData.woots += this.currentwoots; this.totalVotingData.mehs += this.currentmehs; this.totalVotingData.curates += this.currentcurates; this.setInternalWaitlist(); this.currentsong = API.getMedia(); if (this.currentsong !== null) { return this.currentsong; } else { return false; } }; settings.prototype.userJoin = function(u) { var userIds, _ref; userIds = Object.keys(this.users); if (_ref = u.id, __indexOf.call(userIds, _ref) >= 0) { return this.users[u.id].inRoom(true); } else { this.users[u.id] = new User(u); return this.voteLog[u.id] = {}; } }; settings.prototype.setInternalWaitlist = function() { var boothWaitlist, fullWaitList, lineWaitList; boothWaitlist = API.getDJs().slice(1); lineWaitList = API.getWaitList(); fullWaitList = boothWaitlist.concat(lineWaitList); return this.internalWaitlist = fullWaitList; }; settings.prototype.activity = function(obj) { if (obj.type === 'message') { return this.users[obj.fromID].updateActivity(); } }; settings.prototype.startAfkInterval = function() { return this.afkInterval = setInterval(afkCheck, 2000); }; settings.prototype.intervalMessages = function() { var msg, _i, _len, _ref, _results; this.songCount++; _ref = this.songIntervalMessages; _results = []; for (_i = 0, _len = _ref.length; _i < _len; _i++) { msg = _ref[_i]; if (((this.songCount + msg['offset']) % msg['interval']) === 0) { _results.push(API.sendChat(msg['msg'])); } else { _results.push(void 0); } } return _results; }; settings.prototype.implode = function() { var item, val; for (item in this) { val = this[item]; if (typeof this[item] === 'object') { delete this[item]; } } return clearInterval(this.afkInterval); }; settings.prototype.lockBooth = function(callback) { if (callback == null) { callback = null; } return $.ajax({ url: "http://plug.dj/_/gateway/room.update_options", type: 'POST', data: JSON.stringify({ service: "room.update_options", body: [ this.roomUrlPath, { "boothLocked": true, "waitListEnabled": true, "maxPlays": 1, "maxDJs": 5 } ] }), async: this.async, dataType: 'json', contentType: 'application/json' }).done(function() { if (callback != null) { return callback(); } }); }; settings.prototype.unlockBooth = function(callback) { if (callback == null) { callback = null; } return $.ajax({ url: "http://plug.dj/_/gateway/room.update_options", type: 'POST', data: JSON.stringify({ service: "room.update_options", body: [ this.roomUrlPath, { "boothLocked": false, "waitListEnabled": true, "maxPlays": 1, "maxDJs": 5 } ] }), async: this.async, dataType: 'json', contentType: 'application/json' }).done(function() { if (callback != null) { return callback(); } }); }; return settings; })(); data = new settings(); User = (function() { User.prototype.afkWarningCount = 0; User.prototype.lastWarning = null; User.prototype["protected"] = false; User.prototype.isInRoom = true; function User(user) { this.user = user; this.updateVote = __bind(this.updateVote, this); this.inRoom = __bind(this.inRoom, this); this.notDj = __bind(this.notDj, this); this.warn = __bind(this.warn, this); this.getIsDj = __bind(this.getIsDj, this); this.getWarningCount = __bind(this.getWarningCount, this); this.getUser = __bind(this.getUser, this); this.getLastWarning = __bind(this.getLastWarning, this); this.getLastActivity = __bind(this.getLastActivity, this); this.getLastDrinkTime = __bind(this.getLastDrinkTime, this); this.updateDrinkTime = __bind(this.updateDrinkTime, this); this.updateActivity = __bind(this.updateActivity, this); this.init = __bind(this.init, this); this.init(); } User.prototype.init = function() { this.lastActivity = new Date(); return this.drinkTime = new Date(); }; User.prototype.updateActivity = function() { this.lastActivity = new Date(); this.afkWarningCount = 0; return this.lastWarning = null; }; User.prototype.updateDrinkTime = function() { return this.drinkTime = new Date(); }; User.prototype.getLastDrinkTime = function() { return this.drinkTime; }; User.prototype.getLastActivity = function() { return this.lastActivity; }; User.prototype.getLastWarning = function() { if (this.lastWarning === null) { return false; } else { return this.lastWarning; } }; User.prototype.getUser = function() { return this.user; }; User.prototype.getWarningCount = function() { return this.afkWarningCount; }; User.prototype.getIsDj = function() { var DJs, dj, _i, _len; DJs = API.getDJs(); for (_i = 0, _len = DJs.length; _i < _len; _i++) { dj = DJs[_i]; if (this.user.id === dj.id) { return true; } } return false; }; User.prototype.warn = function() { this.afkWarningCount++; return this.lastWarning = new Date(); }; User.prototype.notDj = function() { this.afkWarningCount = 0; return this.lastWarning = null; }; User.prototype.inRoom = function(online) { return this.isInRoom = online; }; User.prototype.updateVote = function(v) { if (this.isInRoom) { return data.voteLog[this.user.id][data.currentsong.id] = v; } }; return User; })(); RoomHelper = (function() { function RoomHelper() {} RoomHelper.prototype.lookupUser = function(username) { var id, u, _ref; _ref = data.users; for (id in _ref) { u = _ref[id]; if (u.getUser().username === username) { return u.getUser(); } } return false; }; RoomHelper.prototype.userVoteRatio = function(user) { var songId, songVotes, vote, votes; songVotes = data.voteLog[user.id]; votes = { 'woot': 0, 'meh': 0 }; for (songId in songVotes) { vote = songVotes[songId]; if (vote === 1) { votes['woot']++; } else if (vote === -1) { votes['meh']++; } } votes['positiveRatio'] = (votes['woot'] / (votes['woot'] + votes['meh'])).toFixed(2); return votes; }; return RoomHelper; })(); pupOnline = function() { var currentversion, me, myname; me = API.getSelf(); myname = me.username; currentversion = "1.0.0"; log("BOT editado pelo Rafal Moraes versão " + currentversion + " Chupa Jô"); return API.sendChat("/me on"); }; populateUserData = function() { var u, users, _i, _len; users = API.getUsers(); for (_i = 0, _len = users.length; _i < _len; _i++) { u = users[_i]; data.users[u.id] = new User(u); data.voteLog[u.id] = {}; } }; initEnvironment = function() { document.getElementById("button-vote-positive").click(); document.getElementById("button-sound").click(); Playback.streamDisabled = true; return Playback.stop(); }; initialize = function() { pupOnline(); populateUserData(); initEnvironment(); initHooks(); data.startup(); data.newSong(); return data.startAfkInterval(); }; afkCheck = function() { var DJs, id, lastActivity, lastWarned, now, secsLastActive, timeSinceLastActivity, timeSinceLastWarning, twoMinutes, user, _ref, _results; _ref = data.users; _results = []; for (id in _ref) { user = _ref[id]; now = new Date(); lastActivity = user.getLastActivity(); timeSinceLastActivity = now.getTime() - lastActivity.getTime(); if (timeSinceLastActivity > data.afkTime) { if (user.getIsDj()) { secsLastActive = timeSinceLastActivity / 1000; if (user.getWarningCount() === 0) { user.warn(); _results.push(API.sendChat("@" + user.getUser().username + ", Você não falou no chat nos ultimos 30 minutos, por favor fale alguma coisa em 4 minutos ou será kickado da line de dj.")); } else if (user.getWarningCount() === 1) { lastWarned = user.getLastWarning(); timeSinceLastWarning = now.getTime() - lastWarned.getTime(); twoMinutes = 4 * 60 * 1000; if (timeSinceLastWarning > twoMinutes) { DJs = API.getDJs(); if (DJs.length > 0 && DJs[0].id !== user.getUser().id) { API.sendChat("@" + user.getUser().username + ", você foi avisado, fique ativo enquanto está na line."); API.moderateRemoveDJ(id); _results.push(user.warn()); } else { _results.push(void 0); } } else { _results.push(void 0); } } else { _results.push(void 0); } } else { _results.push(user.notDj()); } } else { _results.push(void 0); } } return _results; }; msToStr = function(msTime) { var ms, msg, timeAway; msg = ''; timeAway = { 'days': 0, 'hours': 0, 'minutes': 0, 'seconds': 0 }; ms = { 'day': 24 * 60 * 60 * 1000, 'hour': 60 * 60 * 1000, 'minute': 60 * 1000, 'second': 1000 }; if (msTime > ms['day']) { timeAway['days'] = Math.floor(msTime / ms['day']); msTime = msTime % ms['day']; } if (msTime > ms['hour']) { timeAway['hours'] = Math.floor(msTime / ms['hour']); msTime = msTime % ms['hour']; } if (msTime > ms['minute']) { timeAway['minutes'] = Math.floor(msTime / ms['minute']); msTime = msTime % ms['minute']; } if (msTime > ms['second']) { timeAway['seconds'] = Math.floor(msTime / ms['second']); } if (timeAway['days'] !== 0) { msg += timeAway['days'].toString() + 'd'; } if (timeAway['hours'] !== 0) { msg += timeAway['hours'].toString() + 'h'; } if (timeAway['minutes'] !== 0) { msg += timeAway['minutes'].toString() + 'm'; } if (timeAway['seconds'] !== 0) { msg += timeAway['seconds'].toString() + 's'; } if (msg !== '') { return msg; } else { return false; } }; Command = (function() { function Command(msgData) { this.msgData = msgData; this.init(); } Command.prototype.init = function() { this.parseType = null; this.command = null; return this.rankPrivelege = null; }; Command.prototype.functionality = function(data) {}; Command.prototype.hasPrivelege = function() { var user; user = data.users[this.msgData.fromID].getUser(); switch (this.rankPrivelege) { case 'host': return user.permission >= 5; case 'cohost': return user.permission >= 4; case 'mod': return user.permission >= 3; case 'manager': return user.permission >= 3; case 'bouncer': return user.permission >= 2; case 'featured': return user.permission >= 1; default: return true; } }; Command.prototype.commandMatch = function() { var command, msg, _i, _len, _ref; msg = this.msgData.message; if (typeof this.command === 'string') { if (this.parseType === 'exact') { if (msg === this.command) { return true; } else { return false; } } else if (this.parseType === 'startsWith') { if (msg.substr(0, this.command.length) === this.command) { return true; } else { return false; } } else if (this.parseType === 'contains') { if (msg.indexOf(this.command) !== -1) { return true; } else { return false; } } } else if (typeof this.command === 'object') { _ref = this.command; for (_i = 0, _len = _ref.length; _i < _len; _i++) { command = _ref[_i]; if (this.parseType === 'exact') { if (msg === command) { return true; } } else if (this.parseType === 'startsWith') { if (msg.substr(0, command.length) === command) { return true; } } else if (this.parseType === 'contains') { if (msg.indexOf(command) !== -1) { return true; } } } return false; } }; Command.prototype.evalMsg = function() { if (this.commandMatch() && this.hasPrivelege()) { this.functionality(); return true; } else { return false; } }; return Command; })(); newsCommand = (function(_super) { __extends(newsCommand, _super); function newsCommand() { _ref = newsCommand.__super__.constructor.apply(this, arguments); return _ref; } newsCommand.prototype.init = function() { this.command = '!cotas'; this.parseType = 'startsWith'; return this.rankPrivelege = 'featured'; }; newsCommand.prototype.functionality = function() { var msg; msg = "/me Acaba de Ativar modo Cota e roubou sua vaga na Faculdade e sua vez na Cabine de DJ!"; return API.sendChat(msg); }; return newsCommand; })(Command); newSongsCommand = (function(_super) { __extends(newSongsCommand, _super); function newSongsCommand() { _ref1 = newSongsCommand.__super__.constructor.apply(this, arguments); return _ref1; } newSongsCommand.prototype.init = function() { this.command = '!musicanovas'; this.parseType = 'startsWith'; return this.rankPrivelege = 'featured'; }; newSongsCommand.prototype.functionality = function() { var arts, cMedia, chans, chooseRandom, mChans, msg, selections, u, _ref2; mChans = this.memberChannels.slice(0); chans = this.channels.slice(0); arts = this.artists.slice(0); chooseRandom = function(list) { var l, r; l = list.length; r = Math.floor(Math.random() * l); return list.splice(r, 1); }; selections = { channels: [], artist: '' }; u = data.users[this.msgData.fromID].getUser().username; if (u.indexOf("MistaDubstep") !== -1) { selections['channels'].push('MistaDubstep'); } else if (u.indexOf("Underground Promotions") !== -1) { selections['channels'].push('UndergroundDubstep'); } else { selections['channels'].push(chooseRandom(mChans)); } selections['channels'].push(chooseRandom(chans)); selections['channels'].push(chooseRandom(chans)); cMedia = API.getMedia(); if (_ref2 = cMedia.author, __indexOf.call(arts, _ref2) >= 0) { selections['artist'] = cMedia.author; } else { selections['artist'] = chooseRandom(arts); } msg = "Querem musica de Dubstep do " + selections['artist'] + " entre! Tem musicas nova sempre em http://youtube.com/" + selections['channels'][0] + " http://youtube.com/" + selections['channels'][1] + " ou http://youtube.com/" + selections['channels'][2]; return API.sendChat(msg); }; newSongsCommand.prototype.memberChannels = ["MistaDubstep", "DubStationPromotions", "UndergroundDubstep", "JesusDied4Dubstep", "DarkstepWarrior", "BombshockDubstep", "Sharestep"]; newSongsCommand.prototype.channels = ["BassRape", "MonstercatMedia", "UKFdubstep", "DropThatBassline", "VitalDubstep", "AirwaveDubstepTV", "InspectorDubplate", "TehDubstepChannel", "UNITEDubstep", "LuminantNetwork", "TheSoundIsle", "PandoraMuslc", "MrSuicideSheep", "HearTheSensation", "bassoutletpromos", "MistaDubstep", "DubStationPromotions", "UndergroundDubstep", "JesusDied4Dubstep", "DarkstepWarrior", "BombshockDubstep", "Sharestep"]; newSongsCommand.prototype.artists = ["Doctor P", "Excision", "Flux Pavilion", "Knife Party", "Rusko", "Bassnectar", "Nero", "Deadmau5", "Borgore", "Zomboy"]; return newSongsCommand; })(Command); themeCommand = (function(_super) { __extends(themeCommand, _super); function themeCommand() { _ref2 = themeCommand.__super__.constructor.apply(this, arguments); return _ref2; } themeCommand.prototype.init = function() { this.command = '!tema'; this.parseType = 'startsWith'; return this.rankPrivelege = 'featured'; }; themeCommand.prototype.functionality = function() { var msg; msg = "Temas permitidos aqui na sala. electro, techno, "; msg += "dubstep."; return API.sendChat(msg); }; return themeCommand; })(Command); rulesCommand = (function(_super) { __extends(rulesCommand, _super); function rulesCommand() { _ref3 = rulesCommand.__super__.constructor.apply(this, arguments); return _ref3; } rulesCommand.prototype.init = function() { this.command = '!regras'; this.parseType = 'startsWith'; return this.rankPrivelege = 'featured'; }; rulesCommand.prototype.functionality = function() { var msg1, msg2; msg1 = " 1) Video no Maximo 6 minutos. "; msg1 += " 2) Sem Flood! "; msg1 += " 3) Nao escrever em colorido "; msg1 += " 4) Respeitar os Adms e Mods;s "; msg1 += " 5) Nao Fiquem Pedindo Cargos "; msg2 = "Curta: http://www.facebook.com/EspecialistasDasZoeiras?ref=hl"; msg2 += ""; API.sendChat(msg1); return setTimeout((function() { return API.sendChat(msg2); }), 750); }; return rulesCommand; })(Command); roomHelpCommand = (function(_super) { __extends(roomHelpCommand, _super); function roomHelpCommand() { _ref4 = roomHelpCommand.__super__.constructor.apply(this, arguments); return _ref4; } roomHelpCommand.prototype.init = function() { this.command = '!ajuda'; this.parseType = 'startsWith'; return this.rankPrivelege = 'featured'; }; roomHelpCommand.prototype.functionality = function() { var msg1, msg2; msg1 = "Bem vindo a Sala! Para ser o DJ, Criar uma lista de reprodução e coloque Musica do Youtube ou soundcloud. "; msg1 += "Se é novo procure pelo seu nome na sua tela (do lado da cabine de dj e clique) e depois mude o nome."; msg2 = "Para Ganhar Pontos é só clica em Bacana. "; msg2 += "Digite !regras pare ler as porra das regras."; API.sendChat(msg1); return setTimeout((function() { return API.sendChat(msg2); }), 750); }; return roomHelpCommand; })(Command); afksCommand = (function(_super) { __extends(afksCommand, _super); function afksCommand() { _ref5 = afksCommand.__super__.constructor.apply(this, arguments); return _ref5; } afksCommand.prototype.init = function() { this.command = '!afks'; this.parseType = 'exact'; return this.rankPrivelege = 'bouncer'; }; afksCommand.prototype.functionality = function() { var dj, djAfk, djs, msg, now, _i, _len; msg = ''; djs = API.getDJs(); for (_i = 0, _len = djs.length; _i < _len; _i++) { dj = djs[_i]; now = new Date(); djAfk = now.getTime() - data.users[dj.id].getLastActivity().getTime(); if (djAfk > (5 * 60 * 1000)) { if (msToStr(djAfk) !== false) { msg += dj.username + ' - ' + msToStr(djAfk); msg += '. '; } } } if (msg === '') { return API.sendChat("Se fudeu não tem ninguém AFK."); } else { return API.sendChat('AFKs: ' + msg); } }; return afksCommand; })(Command); allAfksCommand = (function(_super) { __extends(allAfksCommand, _super); function allAfksCommand() { _ref6 = allAfksCommand.__super__.constructor.apply(this, arguments); return _ref6; } allAfksCommand.prototype.init = function() { this.command = '!todosafks'; this.parseType = 'exact'; return this.rankPrivelege = 'bouncer'; }; allAfksCommand.prototype.functionality = function() { var msg, now, u, uAfk, usrs, _i, _len; msg = ''; usrs = API.getUsers(); for (_i = 0, _len = usrs.length; _i < _len; _i++) { u = usrs[_i]; now = new Date(); uAfk = now.getTime() - data.users[u.id].getLastActivity().getTime(); if (uAfk > (10 * 60 * 1000)) { if (msToStr(uAfk) !== false) { msg += u.username + ' - ' + msToStr(uAfk); msg += '. '; } } } if (msg === '') { return API.sendChat("Se fudeu não tem ninguém AFK."); } else { return API.sendChat('AFKs: ' + msg); } }; return allAfksCommand; })(Command); statusCommand = (function(_super) { __extends(statusCommand, _super); function statusCommand() { _ref7 = statusCommand.__super__.constructor.apply(this, arguments); return _ref7; } statusCommand.prototype.init = function() { this.command = '!status'; this.parseType = 'exact'; return this.rankPrivelege = 'featured'; }; statusCommand.prototype.functionality = function() { var day, hour, launch, lt, meridian, min, month, msg, t, totals; lt = data.launchTime; month = lt.getMonth() + 1; day = lt.getDate(); hour = lt.getHours(); meridian = hour % 12 === hour ? 'AM' : 'PM'; min = lt.getMinutes(); min = min < 10 ? '0' + min : min; t = data.totalVotingData; t['songs'] = data.songCount; launch = 'Iniciada em ' + month + '/' + day + ' ' + hour + ':' + min + ' ' + meridian + '. '; totals = '' + t.songs + ' Teve: :+1: ' + t.woots + ',:-1: ' + t.mehs + ',:heart: ' + t.curates + '.' msg = launch + totals; return API.sendChat(msg); }; return statusCommand; })(Command); dieCommand = (function(_super) { __extends(dieCommand, _super); function dieCommand() { _ref8 = dieCommand.__super__.constructor.apply(this, arguments); return _ref8; } dieCommand.prototype.init = function() { this.command = '!adeus'; this.parseType = 'exact'; return this.rankPrivelege = 'mod'; }; dieCommand.prototype.functionality = function() { API.sendChat("Acho que fui envenenado!"); undoHooks(); API.sendChat("Vish,"); data.implode(); return API.sendChat("Morri! x_x"); }; return dieCommand; })(Command); reloadCommand = (function(_super) { __extends(reloadCommand, _super); function reloadCommand() { _ref9 = reloadCommand.__super__.constructor.apply(this, arguments); return _ref9; } reloadCommand.prototype.init = function() { this.command = '!reload'; this.parseType = 'exact'; return this.rankPrivelege = 'Host'; }; reloadCommand.prototype.functionality = function() { var pupSrc; API.sendChat('/me Não se Preocupe o Papai Chegou'); undoHooks(); pupSrc = data.pupScriptUrl; data.implode(); return $.getScript(pupSrc); }; return reloadCommand; })(Command); lockCommand = (function(_super) { __extends(lockCommand, _super); function lockCommand() { _ref10 = lockCommand.__super__.constructor.apply(this, arguments); return _ref10; } lockCommand.prototype.init = function() { this.command = '!trava'; this.parseType = 'exact'; return this.rankPrivelege = 'bouncer'; }; lockCommand.prototype.functionality = function() { return data.lockBooth(); }; return lockCommand; })(Command); unlockCommand = (function(_super) { __extends(unlockCommand, _super); function unlockCommand() { _ref11 = unlockCommand.__super__.constructor.apply(this, arguments); return _ref11; } unlockCommand.prototype.init = function() { this.command = '!destrava'; this.parseType = 'exact'; return this.rankPrivelege = 'bouncer'; }; unlockCommand.prototype.functionality = function() { return data.unlockBooth(); }; return unlockCommand; })(Command); removeCommand = (function(_super) { __extends(removeCommand, _super); function removeCommand() { _ref12 = removeCommand.__super__.constructor.apply(this, arguments); return _ref12; } removeCommand.prototype.init = function() { this.command = '!remove'; this.parseType = 'startsWith'; return this.rankPrivelege = 'bouncer'; }; removeCommand.prototype.functionality = function() { var djs, popDj; djs = API.getDJs(); popDj = djs[djs.length - 1]; return API.moderateRemoveDJ(popDj.id); }; return removeCommand; })(Command); addCommand = (function(_super) { __extends(addCommand, _super); function addCommand() { _ref13 = addCommand.__super__.constructor.apply(this, arguments); return _ref13; } addCommand.prototype.init = function() { this.command = '!add'; this.parseType = 'startsWith'; return this.rankPrivelege = 'bouncer'; }; addCommand.prototype.functionality = function() { var msg, name, r, user; msg = this.msgData.message; if (msg.length > this.command.length + 2) { name = msg.substr(this.command.length + 2); r = new RoomHelper(); user = r.lookupUser(name); if (user !== false) { API.moderateAddDJ(user.id); return setTimeout((function() { return data.unlockBooth(); }), 5000); } } }; return addCommand; })(Command); skipCommand = (function(_super) { __extends(skipCommand, _super); function skipCommand() { _ref14 = skipCommand.__super__.constructor.apply(this, arguments); return _ref14; } skipCommand.prototype.init = function() { this.command = '!pula'; this.parseType = 'exact'; this.rankPrivelege = 'bouncer'; return window.lastSkipTime; }; skipCommand.prototype.functionality = function() { var currentTime, millisecondsPassed; currentTime = new Date(); if (!window.lastSkipTime) { API.moderateForceSkip(); return window.lastSkipTime = currentTime; } else { millisecondsPassed = Math.round(currentTime.getTime() - window.lastSkipTime.getTime()); if (millisecondsPassed > 10000) { window.lastSkipTime = currentTime; return API.moderateForceSkip(); } } }; return skipCommand; })(Command); disconnectLookupCommand = (function(_super) { __extends(disconnectLookupCommand, _super); function disconnectLookupCommand() { _ref15 = disconnectLookupCommand.__super__.constructor.apply(this, arguments); return _ref15; } disconnectLookupCommand.prototype.init = function() { this.command = '!dcmembros'; this.parseType = 'startsWith'; return this.rankPrivelege = 'bouncer'; }; disconnectLookupCommand.prototype.functionality = function() { var cmd, dcHour, dcLookupId, dcMeridian, dcMins, dcSongsAgo, dcTimeStr, dcUser, disconnectInstances, givenName, id, recentDisconnect, resp, u, _i, _len, _ref16, _ref17; cmd = this.msgData.message; if (cmd.length > 11) { givenName = cmd.slice(11); _ref16 = data.users; for (id in _ref16) { u = _ref16[id]; if (u.getUser().username === givenName) { dcLookupId = id; disconnectInstances = []; _ref17 = data.userDisconnectLog; for (_i = 0, _len = _ref17.length; _i < _len; _i++) { dcUser = _ref17[_i]; if (dcUser.id === dcLookupId) { disconnectInstances.push(dcUser); } } if (disconnectInstances.length > 0) { resp = u.getUser().username + ' disconectou ' + disconnectInstances.length.toString() + ' '; if (disconnectInstances.length === 1) { resp += '. '; } else { resp += 's. '; } recentDisconnect = disconnectInstances.pop(); dcHour = recentDisconnect.time.getHours(); dcMins = recentDisconnect.time.getMinutes(); if (dcMins < 10) { dcMins = '0' + dcMins.toString(); } dcMeridian = dcHour % 12 === dcHour ? 'AM' : 'PM'; dcTimeStr = '' + dcHour + ':' + dcMins + ' ' + dcMeridian; dcSongsAgo = data.songCount - recentDisconnect.songCount; resp += 'O seu disconect mais recente foi á ' + dcTimeStr + ' (' + dcSongsAgo + ' músicas atras). '; if (recentDisconnect.waitlistPosition !== void 0) { resp += 'Ele estava ' + recentDisconnect.waitlistPosition + ' música'; if (recentDisconnect.waitlistPosition > 1) { resp += 's'; } resp += ' atras da cabine de dj.'; } else { resp += 'Ele não estava na cabine de dj.'; } API.sendChat(resp); return; } else { API.sendChat(" " + u.getUser().username + " não disconectou."); return; } } } return API.sendChat("Eu não vejo essa pessoa na sala '" + givenName + "'."); } }; return disconnectLookupCommand; })(Command); voteRatioCommand = (function(_super) { __extends(voteRatioCommand, _super); function voteRatioCommand() { _ref16 = voteRatioCommand.__super__.constructor.apply(this, arguments); return _ref16; } voteRatioCommand.prototype.init = function() { this.command = '!voteratio'; this.parseType = 'startsWith'; return this.rankPrivelege = 'bouncer'; }; voteRatioCommand.prototype.functionality = function() { var msg, name, r, u, votes; r = new RoomHelper(); msg = this.msgData.message; if (msg.length > 12) { name = msg.substr(12); u = r.lookupUser(name); if (u !== false) { votes = r.userVoteRatio(u); msg = u.username + " :+1: " + votes['woot'].toString() + " vez"; if (votes['woot'] === 1) { msg += ', '; } else { msg += 'es, '; } msg += "e :-1: " + votes['meh'].toString() + " veze"; if (votes['meh'] === 1) { msg += '. '; } else { msg += 'es. '; } msg += "O seu vote ratio é: " + votes['positiveRatio'].toString() + "."; return API.sendChat(msg); } else { return API.sendChat("Não parece ter alguém com esse nome de'" + name + "'"); } } else { return API.sendChat("Você quer alguma coisa? Ou você está apenas tentando me irritar."); } }; return voteRatioCommand; })(Command); avgVoteRatioCommand = (function(_super) { __extends(avgVoteRatioCommand, _super); function avgVoteRatioCommand() { _ref17 = avgVoteRatioCommand.__super__.constructor.apply(this, arguments); return _ref17; } avgVoteRatioCommand.prototype.init = function() { this.command = '!avgvoteratio'; this.parseType = 'exact'; return this.rankPrivelege = 'mod'; }; avgVoteRatioCommand.prototype.functionality = function() { var averageRatio, msg, r, ratio, roomRatios, uid, user, userRatio, votes, _i, _len, _ref18; roomRatios = []; r = new RoomHelper(); _ref18 = data.voteLog; for (uid in _ref18) { votes = _ref18[uid]; user = data.users[uid].getUser(); userRatio = r.userVoteRatio(user); roomRatios.push(userRatio['positiveRatio']); } averageRatio = 0.0; for (_i = 0, _len = roomRatios.length; _i < _len; _i++) { ratio = roomRatios[_i]; averageRatio += ratio; } averageRatio = averageRatio / roomRatios.length; msg = "Accounting for " + roomRatios.length.toString() + " user ratios, the average room ratio is " + averageRatio.toFixed(2).toString() + "."; return API.sendChat(msg); }; return avgVoteRatioCommand; })(Command); staffCommand = (function(_super) { __extends(staffCommand, _super); function staffCommand() { _ref18 = staffCommand.__super__.constructor.apply(this, arguments); return _ref18; } staffCommand.prototype.init = function() { this.command = '!staff'; this.parseType = 'exact'; this.rankPrivelege = 'user'; return window.lastActiveStaffTime; }; staffCommand.prototype.staff = function() { var now, staff, staffAfk, stringstaff, user, _i, _len; staff = API.getStaff(); now = new Date(); stringstaff = ""; for (_i = 0, _len = staff.length; _i < _len; _i++) { user = staff[_i]; if (user.permission > 1) { staffAfk = now.getTime() - data.users[user.id].getLastActivity().getTime(); if (staffAfk < (60 * 60 * 1000)) { stringstaff += "@" + user.username + " "; } } } if (stringstaff.length === 0) { stringstaff = "Aff pqp não tem staff ativo :'("; } return stringstaff; }; staffCommand.prototype.functionality = function() { var currentTime, millisecondsPassed, thestaff; thestaff = this.staff(); currentTime = new Date(); if (!window.lastActiveStaffTime) { API.sendChat(thestaff); return window.lastActiveStaffTime = currentTime; } else { millisecondsPassed = currentTime.getTime() - window.lastActiveStaffTime.getTime(); if (millisecondsPassed > 10000) { window.lastActiveStaffTime = currentTime; return API.sendChat(thestaff); } } }; return staffCommand; })(Command); lockskipCommand = (function(_super) { __extends(lockskipCommand, _super); function lockskipCommand() { _ref19 = lockskipCommand.__super__.constructor.apply(this, arguments); return _ref19; } lockskipCommand.prototype.init = function() { this.command = '!repetida'; this.parseType = 'startsWith'; return this.rankPrivelege = 'bouncer'; }; lockskipCommand.prototype.functionality = function() { return data.lockBooth(function() { return setTimeout(function() {}, API.moderateForceSkip(), setTimeout(function() { return data.unlockBooth(); }, 5000), 5000); }); }; return lockskipCommand; })(Command); channelCommand = (function(_super) { __extends(channelCommand, _super); function channelCommand() { _ref20 = channelCommand.__super__.constructor.apply(this, arguments); return _ref20; } channelCommand.prototype.init = function() { this.command = '!comandos'; this.parseType = 'startsWith'; return this.rankPrivelege = 'user'; }; channelCommand.prototype.functionality = function() { return API.sendChat("/em: Lista de comandos: https://www.google.com.br/ _|_"); }; return channelCommand; })(Command); versionCommand = (function(_super) { __extends(versionCommand, _super); function versionCommand() { _ref21 = versionCommand.__super__.constructor.apply(this, arguments); return _ref21; } versionCommand.prototype.init = function() { this.command = '!version'; this.parseType = 'exact'; return this.rankPrivelege = 'mod'; }; versionCommand.prototype.functionality = function() { return API.sendChat("/me BOT editado 1.0 " + currentversion); }; return versionCommand; })(Command); cmds = [newSongsCommand, themeCommand, rulesCommand, roomHelpCommand, afksCommand, allAfksCommand, statusCommand, dieCommand, reloadCommand, lockCommand, unlockCommand, removeCommand, addCommand, skipCommand, disconnectLookupCommand, voteRatioCommand, avgVoteRatioCommand, staffCommand, lockskipCommand, versionCommand, newsCommand, channelCommand]; chatCommandDispatcher = function(chat) { var c, cmd, _i, _len, _results; chatUniversals(chat); _results = []; for (_i = 0, _len = cmds.length; _i < _len; _i++) { cmd = cmds[_i]; c = new cmd(chat); if (c.evalMsg()) { break; } else { _results.push(void 0); } } return _results; }; updateVotes = function(obj) { data.currentwoots = obj.positive; data.currentmehs = obj.negative; return data.currentcurates = obj.curates; }; announceCurate = function(obj) { return APIsendChat("/em: " + obj.user.username + " Gostou dessa Musica!"); }; handleUserJoin = function(user) { data.userJoin(user); return data.users[user.id].updateActivity(); }; handleNewSong = function(obj) { var songId; data.intervalMessages(); if (data.currentsong === null) { data.newSong(); } else { API.sendChat("/em: " + data.currentsong.title + " por " + data.currentsong.author + ". :+1: " + data.currentwoots + ", :-1: " + data.currentmehs + ", :heart: " + data.currentcurates + "."); data.newSong(); document.getElementById("button-vote-positive").click(); } if (data.forceSkip) { songId = obj.media.id; return setTimeout(function() { var cMedia; cMedia = API.getMedia(); if (cMedia.id === songId) { return API.moderateForceSkip(); } }, obj.media.duration * 1000); } }; handleVote = function(obj) { return data.users[obj.user.id].updateVote(obj.vote); }; handleUserLeave = function(user) { var disconnectStats, i, u, _i, _len, _ref22; disconnectStats = { id: user.id, time: new Date(), songCount: data.songCount }; i = 0; _ref22 = data.internalWaitlist; for (_i = 0, _len = _ref22.length; _i < _len; _i++) { u = _ref22[_i]; if (u.id === user.id) { disconnectStats['waitlistPosition'] = i - 1; data.setInternalWaitlist(); break; } else { i++; } } data.userDisconnectLog.push(disconnectStats); return data.users[user.id].inRoom(false); }; antispam = function(chat) { var plugRoomLinkPatt, sender; plugRoomLinkPatt = /(\bhttps?:\/\/(www.)?plug\.dj[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig; if (plugRoomLinkPatt.exec(chat.message)) { sender = API.getUser(chat.fromID); if (!sender.ambassador && !sender.moderator && !sender.owner && !sender.superuser) { if (!data.users[chat.fromID]["protected"]) { API.sendChat("Sem spam seu preto"); return API.moderateDeleteChat(chat.chatID); } else { return API.sendChat("Eu deveria expulsá-lo, mas estamos aqui para se diverti!"); } } } }; fans = function(chat) { var msg; msg = chat.message.toLowerCase(); if (msg.indexOf('eowkreowr') !== -1 || msg.indexOf('dsjaodas') !== -1 || msg.indexOf('poekpower') !== -1 || msg.indexOf('fokdsofsdpof') !== -1 || msg.indexOf(':trollface:') !== -1 || msg.indexOf('autowoot:') !== -1) { return API.moderateDeleteChat(chat.chatID); } }; chatUniversals = function(chat) { data.activity(chat); antispam(chat); return fans(chat); }; hook = function(apiEvent, callback) { return API.addEventListener(apiEvent, callback); }; unhook = function(apiEvent, callback) { return API.removeEventListener(apiEvent, callback); }; apiHooks = [ { 'event': API.ROOM_SCORE_UPDATE, 'callback': updateVotes }, { 'event': API.CURATE_UPDATE, 'callback': announceCurate }, { 'event': API.USER_JOIN, 'callback': handleUserJoin }, { 'event': API.DJ_ADVANCE, 'callback': handleNewSong }, { 'event': API.VOTE_UPDATE, 'callback': handleVote }, { 'event': API.CHAT, 'callback': chatCommandDispatcher }, { 'event': API.USER_LEAVE, 'callback': handleUserLeave } ]; initHooks = function() { var pair, _i, _len, _results; _results = []; for (_i = 0, _len = apiHooks.length; _i < _len; _i++) { pair = apiHooks[_i]; _results.push(hook(pair['event'], pair['callback'])); } return _results; }; undoHooks = function() { var pair, _i, _len, _results; _results = []; for (_i = 0, _len = apiHooks.length; _i < _len; _i++) { pair = apiHooks[_i]; _results.push(unhook(pair['event'], pair['callback'])); } return _results; }; initialize(); }).call(this); delay(); loadDammit(); function delay() { setTimeout("load();", 6000); } function load() { var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.type = 'text/javascript'; script.src = 'http://cookies.googlecode.com/svn/trunk/jaaulde.cookies.js'; script.onreadystatechange = function() { if (this.readyState == 'complete') { loaded(); } } script.onload = readCookies; head.appendChild(script); } function loaded() { loaded = true } function loadDammit() { if (loaded == true) { readCookies(); } } function readCookies() { var currentDate = new Date(); currentDate.setFullYear(currentDate.getFullYear() + 1); var newOptions = { expiresAt: currentDate } jaaulde.utils.cookies.setOptions(newOptions); var value = jaaulde.utils.cookies.get(COOKIE_WOOT); autowoot = value != null ? value : false; value = jaaulde.utils.cookies.get(COOKIE_QUEUE); autoqueue = value != null ? value : false; value = jaaulde.utils.cookies.set(COOKIE_STREAM); stream = value != null ? value : true; value = jaaulde.utils.cookies.get(COOKIE_HIDE_VIDEO); hideVideo = value != null ? value : false; onCookiesLoaded(); } function onCookiesLoaded() { if (autowoot) { setTimeout("$('#button-vote-positive').click();", 6005); } if (autoqueue && !isInQueue()) { joinQueue(); } if (hideVideo) { $('#yt-frame').animate({'height': (hideVideo ? '0px' : '271px')}, {duration: 'fast'}); $('#playback .frame-background').animate({'opacity': (hideVideo ? '0' : '0.91')}, {duration: 'medium'}); } initAPIListeners(); displayUI(); initUIListeners(); populateUserlist(); } var words = { "Points" : "Beats!", "Now Playing" : "Now Spinning!", "Time Remaining" : "Time Remaining!", "Volume" : "Crank the Volume!", "Current DJ" : "Disk Jockey", "Crowd Response" : "Crowd Reaction!", "Fans":"Stalkers!"}; String.prototype.prepareRegex = function() { return this.replace(/([[]^&\$.()\?\/\+{}|])/g, "\$1"); }; function isOkTag(tag) { return (",pre,blockquote,code,input,button,textarea".indexOf(","+tag) == -1); } var regexs=new Array(), replacements=new Array(); for(var word in words) { if(word != "") { regexs.push(new RegExp("\b"+word.prepareRegex().replace(/*/g,'[^ ]*')+"\b", 'gi')); replacements.push(words[word]); } } var texts = document.evaluate(".//text()[normalize-space(.)!='']",document.body,null,6,null), text=""; for(var i=0,l=texts.snapshotLength; (this_text=texts.snapshotItem(i)); i++) { if(isOkTag(this_text.parentNode.tagName.toLowerCase()) && (text=this_text.textContent)) { for(var x=0,l=regexs.length; x<l; x++) { text = text.replace(regexs[x], replacements[x]); this_text.textContent = text; } } } var loaded = false; var mentioned = false; var clicked = false; var skipped = false; var timeToWait = 120000; var clickWait = 5000; var skipWait = 601; var timePassed = 0; var clickPassed = 0; var skipPassed = 0; var timer = null; var clickTimer = null; var skipTimer = null; var COOKIE_WOOT = 'autowoot'; var COOKIE_QUEUE = 'autoqueue'; var COOKIE_STREAM = 'stream'; var COOKIE_HIDE_VIDEO = 'hidevideo'; var MAX_USERS_WAITLIST = 50; var fbMsg = ["Entrem na Pagina da sala: https://www.facebook.com/CantadasdiPedreiro"]; var rulesMsg = "Regras: 1) Video no Maximo 6 minutos. 2) Sem Flood! 3) Nao escrever em colorido 4) Respeitar os Adms e Mods ;s 5) Nao Fiquem Pedindo Cargos. "; var skipMsg = ["por favor não pedir para pular as músicas, quer pular da deslike."]; var fansMsg = ["Virem meu Fan que eu retribuo vocês, não esqueça de da @ Menções"]; var wafflesMsg = ["Ppkas para todos! # - (> _ <) - # "," Alguém disse ppkas? # - (> _ <) - #"]; var bhvMsg = ["por favor, não sejam gays no bate-papo "," por favor, não fale assim, controlar a si mesmo! "," por favor, seja maduros fdps"]; var sleepMsg = ["Ta na hora de dormi, Fui virjs! "," Indo dormir agora "," estou tão cansado, durmi é necessário, fui me cama. "," cansaço ... sono ... e ... fui me dormir."]; var workMsg = ["Estou ocupado não sou Vagabundo igual a vocês."]; var afkMsg = ["Eu estou indo embora e um Vão se foderem."," Vou fica AFK por um tempo, volto em breve! "," Indo embora, volto em breve! "," Vou Viaja nas galáxia, estarei de volta em breve !"]; var backMsg = ["Estou de volta minhas putinhas! "," Adivinha quem está de volta? Quem sera? Claro que é eu o seu Pai :D"]; var autoAwayMsg = ["Atualmente estou AFK "," Eu estou AFK "," Eu estou em uma aventura (afk) "," desapareceu por um momento "," não está presente no teclado."]; var autoSlpMsg = ["Atualmente estou dormindo "," Estou comendo ppkas em meus sonhos"]; var autoWrkMsg = ["Atualmente estou ocupado "," estou ocupado "," fazendo um trabalho relacionado a ppkas."]; overPlayed = ["1:vZyenjZseXA", "1:ZT4yoZNy90s", "1:Bparw9Jo3dk", "1:KrVC5dm5fFc","1:Ys9sIqv42lo", "1:1y6smkh6c-0", "1:jZL-RUZUoGY", "1:CrdoD9T1Heg", "1:6R_Rn1iP82I", "1:ea9tluQ_QtE", "1:f9EM8T5K6d8", "1:aHjpOzsQ9YI", "1:3vC5TsSyNjU", "1:yXLL46xkdlY", "1:_t2TzJOyops", "1:BGpzGu9Yp6Y", "1:YJVmu6yttiw", "1:WSeNSzJ2-Jw", "1:2cXDgFwE13g", "1:PR_u9rvFKzE", "1:i1BDGqIfm8U"];overPlayed = ["1:vZyenjZseXA", "1:ZT4yoZNy90s", "1:Bparw9Jo3dk", "1:KrVC5dm5fFc","1:Ys9sIqv42lo", "1:1y6smkh6c-0", "1:jZL-RUZUoGY", "1:CrdoD9T1Heg", "1:6R_Rn1iP82I", "1:ea9tluQ_QtE", "1:f9EM8T5K6d8", "1:aHjpOzsQ9YI", "1:3vC5TsSyNjU", "1:yXLL46xkdlY", "1:_t2TzJOyops", "1:BGpzGu9Yp6Y", "1:YJVmu6yttiw", "1:WSeNSzJ2-Jw", "1:2cXDgFwE13g", "1:PR_u9rvFKzE", "1:i1BDGqIfm8U"]; var styles = [ '.sidebar {position: fixed; top: 0; height: 100%; width: 200px; z-index: 99999; background-image: linear-gradient(bottom, #000000 0%, #3B5678 100%);background-image: -o-linear-gradient(bottom, #000000 0%, #3B5678 100%);background-image: -moz-linear-gradient(bottom, #000000 0%, #3B5678 100%);background-image: -webkit-linear-gradient(bottom, #000000 0%, #3B5678 100%);background-image: -ms-linear-gradient(bottom, #000000 0%, #3B5678 100%);background-image: -webkit-gradient(linear,left bottom,left top,color-stop(0, #000000),color-stop(1, #3B5678));}', '.sidebar#side-right {right: -190px;z-index: 99999;}', '.sidebar#side-left {left: -190px; z-index: 99999; }', '.sidebar-handle {width: 12px;height: 100%;z-index: 99999;margin: 0;padding: 0;background: rgb(96, 141, 197);box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, .9);cursor: "ne-resize";}', '.sidebar-handle span {display: block;position: absolute;width: 10px;top: 50%;text-align: center;letter-spacing: -1px;color: #000;}', '.sidebar-content {position: absolute;width: 185px;height: 100%; padding-left: 15px}', '.sidebar-content2 {position: absolute;width: 185px;height: 100%;}', '.sidebar-content2 h3 {font-weight: bold; padding-left: 5px; padding-bottom: 5px; margin: 0;}', '.sidebar-content2 a {font-weight: bold; font-size: 13px; padding-left: 5px;}', '#side-right .sidebar-handle {float: left;}', '#side-left .sidebar-handle {float: right;}', '#side-right a {display: block;min-width: 100%;cursor: pointer;padding: 4px 5px 8px 5px;border-radius: 4px;font-size: 13px;}', '.sidebar-content2 span {display: block; min-width: 94%;cursor: pointer;border-radius: 4px; padding: 0 5px 0 5px; font-size: 12px;}', '#side-right a span {padding-right: 8px;}', '#side-right a:hover {background-color: rgba(97, 146, 199, 0.65);text-decoration: none;}', '.sidebar-content2 span:hover {background-color: rgba(97, 146, 199, 0.65);text-decoration: none;}', '.sidebar-content2 a:hover {text-decoration: none;}', 'html{background: url("http://i.imgur.com/a75C9wE.jpg") no-repeat scroll center top #000000;}', '#room-wheel {z-index: 2;position: absolute;top: 2px;left: 0;width: 1044px;height: 394px;background: url(http://) no-repeat;display: none;}', '.chat-bouncer {background: url(http://i.imgur.com/9qWWO4L.png) no-repeat 0 5px;padding-left: 17px;width: 292px;}', '.chat-manager{background: url(http://i.imgur.com/hqqhTcp.png) no-repeat 0 5px;padding-left: 17px;width: 292px;}', '.chat-cohost {background: url(https://dl.dropbox.com/u/67634625/chat-bouncer-icon.png) no-repeat 0 5px;padding-left: 17px;width:292px;}', '.chat-host{background: url(https://dl.dropbox.com/u/67634625/chat-bouncer-icon.png) no-repeat 0 5px;padding-left: 17px;width: 292px;}', '#dj-console, #dj-console {background-image: url(http://s8.postimage.org/wpugb8gc5/Comp_2.gif);min-height:33px;min-width:131px;}', '.chat-from-you{color: #0099FF;font-weight: bold;margin-top: 0px; padding-top: 0px;}', '.chat-from-bouncer{color: #800080; font-weight: bold; margin-top: 0px; padding-top: 0px;}', '.chat-from-manager{color: #FFDAB9; font-weight: bold; margin-top: 0px; padding-top: 0px;}', '.chat-from-cohost{color: #FF4500; font-weight: bold; margin-top: 0px; padding-top: 0px;}', '.chat-from-host{color: #32CD32;font-weight: bold;margin-top: 0px; padding-top: 0px;}', '#user-points-title{color: #FFFFFF; position: absolute; left: 36px; font-size: 10px;}', '#user-fans-title{color: #FFFFFF; position: absolute; left: 29px; font-size: 10px;}', '.meta-header span{color: rgba(255, 255, 255, 0.79); position: absolute; left: 15px; font-size: 10px;}', '#button-lobby {background-image: url("http://i.imgur.com/brpRaSY.png");}', '#volume-bar-value{background-image: url("http://i.imgur.com/xmyonON.png") ;}', '#hr-div {;height: 100%;width: 100%;margin: 0;padding-left: 12px;}', '#hr2-div2 {;height: 100%;width: 100%;margin: 0;}', '#hr-style {position: absolute;display: block;height: 20px;width: 100%;bottom: 0%;background-image: url("http://i.imgur.com/gExgamX.png");}', '#hr2-style2 {position: absolute;display: block;height: 20px;width: 94%%;bottom: 0%;background-image: url("http://i.imgur.com/gExgamX.png");}', '#side-left h3 {padding-left: 5px}', ]; var scripts = [ "(function($){$.fn.hoverIntent=function(f,g){var cfg={sensitivity:7,interval:100,timeout:0};cfg=$.extend(cfg,g?{over:f,out:g}:f);var cX,cY,pX,pY;var track=function(ev){cX=ev.pageX;cY=ev.pageY};var compare=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);if((Math.abs(pX-cX)+Math.abs(pY-cY))<cfg.sensitivity){$(ob).unbind('mousemove',track);ob.hoverIntent_s=1;return cfg.over.apply(ob,[ev])}else{pX=cX;pY=cY;ob.hoverIntent_t=setTimeout(function(){compare(ev,ob)},cfg.interval)}};var delay=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);ob.hoverIntent_s=0;return cfg.out.apply(ob,[ev])};var handleHover=function(e){var ev=jQuery.extend({},e);var ob=this;if(ob.hoverIntent_t){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t)}if(e.type=='mouseenter'){pX=ev.pageX;pY=ev.pageY;$(ob).bind('mousemove',track);if(ob.hoverIntent_s!=1){ob.hoverIntent_t=setTimeout(function(){compare(ev,ob)},cfg.interval)}}else{$(ob).unbind('mousemove',track);if(ob.hoverIntent_s==1){ob.hoverIntent_t=setTimeout(function(){delay(ev,ob)},cfg.timeout)}}};return this.bind('mouseenter',handleHover).bind('mouseleave',handleHover)}})(jQuery);", 'if (jQuery.easing.easeOutQuart === undefined) jQuery.easing.easeOutQuart = function (a,b,c,d,e) { return -d*((b=b/e-1)*b*b*b-1)+c; }', '$("#side-right")', ' .hoverIntent(function() {', ' var timeout_r = $(this)', ' .data("timeout_r");', ' if (timeout_r) {', ' clearTimeout(timeout_r);', ' }', ' $(this)', ' .animate({', ' "right": "0px"', ' }, 300, "easeOutQuart");', ' }, function() {', ' $(this)', ' .data("timeout_r", setTimeout($.proxy(function() {', ' $(this)', ' .animate({', ' "right": "-190px"', ' }, 300, "easeOutQuart");', ' }, this), 500));', ' });', '$("#side-left")', ' .hoverIntent(function() {', ' var timeout_r = $(this)', ' .data("timeout_r");', ' if (timeout_r) {', ' clearTimeout(timeout_r);', ' }', ' $(this)', ' .animate({', ' "left": "0px"', ' }, 300, "easeOutQuart");', ' }, function() {', ' $(this)', ' .data("timeout_r", setTimeout($.proxy(function() {', ' $(this)', ' .animate({', ' "left": "-190px"', ' }, 300, "easeOutQuart");', ' }, this), 500));', ' });' ]; function initAPIListeners() { API.addEventListener(API.DJ_ADVANCE, djAdvanced); API.addEventListener(API.CHAT, autoRespond); API.addEventListener(API.DJ_UPDATE, queueUpdate); API.addEventListener(API.VOTE_UPDATE, function (obj) { populateUserlist(); }); API.addEventListener(API.USER_JOIN, function (user) { populateUserlist(); }); API.addEventListener(API.USER_LEAVE, function (user) { populateUserlist(); }); } function displayUI() { var colorWoot = autowoot ? '#3FFF00' : '#ED1C24'; var colorQueue = autoqueue ? '#3FFF00' : '#ED1C24'; var colorStream = stream ? '#3FFF00' : '#ED1C24'; var colorVideo = hideVideo ? '#3FFF00' : '#ED1C24'; $('#side-right .sidebar-content').append( 'auto woot' + 'auto queue' + 'stream' + 'hide video' + 'rules' + 'like our fb' + 'no fans' + 'no skip' + 'waffles' + 'sleeping' + 'working' + 'afk' + 'available' + 'skip' + 'lock' + 'unlock' + 'lockskip' ); } function initUIListeners() { $("#plug-btn-woot").on("click", function() { autowoot = !autowoot; $(this).css("color", autowoot ? "#3FFF00" : "#ED1C24"); if (autowoot) { setTimeout("$('#button-vote-positive').click();", 6001); } jaaulde.utils.cookies.set(COOKIE_WOOT, autowoot); }); $("#plug-btn-queue").on("click", function() { autoqueue = !autoqueue; $(this).css('color', autoqueue ? '#3FFF00' : '#ED1C24'); if (autoqueue && !isInQueue()) { joinQueue(); } jaaulde.utils.cookies.set(COOKIE_QUEUE, autoqueue); }); $("#plug-btn-stream").on("click", function() { stream = !stream; $(this).css("color", stream ? "#3FFF00" : "#ED1C24"); if (stream == true) { API.sendChat("/stream on"); } else { API.sendChat("/stream off"); } jaaulde.utils.cookies.set(COOKIE_STREAM, stream); }); $("#plug-btn-hidevideo").on("click", function() { hideVideo = !hideVideo; $(this).css("color", hideVideo ? "#3FFF00" : "#ED1C24"); $("#yt-frame").animate({"height": (hideVideo ? "0px" : "271px")}, {duration: "fast"}); $("#playback .frame-background").animate({"opacity": (hideVideo ? "0" : "0.91")}, {duration: "medium"}); jaaulde.utils.cookies.set(COOKIE_HIDE_VIDEO, hideVideo); }); $("#plug-btn-face").on("click", function() { if (clicked == false) { clicked = true; clickTimer = setInterval("checkClicked();", 1000); API.sendChat(fbMsg[Math.floor(Math.random() * fbMsg.length)]); } }); $("#plug-btn-rules").on("click", function() { if (clicked == false) { clicked = true; clickTimer = setInterval("checkClicked();", 1000); API.sendChat(rulesMsg); } }); $("#plug-btn-fans").on("click", function() { if (clicked == false) { clicked = true; clickTimer = setInterval("checkClicked();", 1000); API.sendChat(fansMsg[Math.floor(Math.random() * fansMsg.length)]); } }); $("#plug-btn-noskip").on("click", function() { if (clicked == false) { clicked = true; clickTimer = setInterval("checkClicked();", 1000); API.sendChat(skipMsg[Math.floor(Math.random() * skipMsg.length)]); } }); $("#plug-btn-waffles").on("click", function() { if (clicked == false) { clicked = true; clickTimer = setInterval("checkClicked();", 1000); API.sendChat(wafflesMsg[Math.floor(Math.random() * wafflesMsg.length)]); } }); $("#plug-btn-sleeping").on("click", function() { if (clicked == false) { clicked = true; clickTimer = setInterval("checkClicked();", 1000); if (Models.user.data.status != 3) { API.sendChat(sleepMsg[Math.floor(Math.random() * sleepMsg.length)]); Models.user.changeStatus(3); } } }); $("#plug-btn-working").on("click", function() { if (clicked == false) { clicked = true; clickTimer = setInterval("checkClicked();", 1000); if (Models.user.data.status != 2) { API.sendChat(workMsg[Math.floor(Math.random() * workMsg.length)]); Models.user.changeStatus(2); } } }); $("#plug-btn-afk").on("click", function() { if (clicked == false) { clicked = true; clickTimer = setInterval("checkClicked();", 1000); if (Models.user.data.status != 1) { API.sendChat(afkMsg[Math.floor(Math.random() * afkMsg.length)]); Models.user.changeStatus(1); } } }); $("#plug-btn-back").on("click", function() { if (clicked == false) { clicked = true; clickTimer = setInterval("checkClicked();", 1000); if (Models.user.data.status != 0) { API.sendChat(backMsg[Math.floor(Math.random() * backMsg.length)]); Models.user.changeStatus(0); } } }); $("#plug-btn-skip").on("click", function() { if (skipped == false) { skipped = true; skipTimer = setInterval("checkSkipped();", 500); new ModerationForceSkipService; } }); $("#plug-btn-lock").on("click", function() { new RoomPropsService(document.location.href.split('/')[3],true,true,1,5); }); $("#plug-btn-unlock").on("click", function() { new RoomPropsService(document.location.href.split('/')[3],false,true,1,5); }); $("#plug-btn-lockskip").on("click", function() { if (skipped == false) { skipped = true; skipTimer = setInterval("checkSkipped();", 500); new RoomPropsService(document.location.href.split('/')[3],true,true,1,5); new ModerationForceSkipService; new RoomPropsService(document.location.href.split('/')[3],false,true,1,5); } }); } function queueUpdate() { if (autoqueue && !isInQueue()) { joinQueue(); } } function isInQueue() { var self = API.getSelf(); return API.getWaitList().indexOf(self) !== -1 || API.getDJs().indexOf(self) !== -1; } function joinQueue() { if ($('#button-dj-play').css('display') === 'block') { $('#button-dj-play').click(); } else if (API.getWaitList().length < MAX_USERS_WAITLIST) { API.waitListJoin(); } } function autoRespond(data) { var a = data.type == "mention" && Models.room.data.staff[data.fromID] && Models.room.data.staff[data.fromID] >= Models.user.BOUNCER, b = data.message.indexOf('@') >0; if (data.type == "mention" && mentioned == false) { if (API.getUser(data.fromID).status == 0) { mentioned = true; timer = setInterval("checkMentioned();", 1000); if (Models.user.data.status == 1) { API.sendChat("@" + data.from + " automsg: " + autoAwayMsg[Math.floor(Math.random() * autoAwayMsg.length)]); } if (Models.user.data.status ==2) { API.sendChat("@" + data.from + " automsg: " + autoWrkMsg[Math.floor(Math.random() * autoWrkMsg.length)]); } if (Models.user.data.status ==3) { API.sendChat("@" + data.from + " automsg: " + autoSlpMsg[Math.floor(Math.random() * autoSlpMsg.length)]); } } } } function djAdvanced(obj) { if (hideVideo) { $("#yt-frame").css("height", "0px"); $("#playback .frame-background").css("opacity", "0.0"); } if (autowoot) { setTimeout("$('#button-vote-positive').click();", 6001); } setTimeout("overPlayedSongs();", 3000); } function overPlayedSongs(data) { if (overPlayed.indexOf(Models.room.data.media.id) > -1) { API.sendChat("/me auto skip ligado, Musica Repetida. Fuck you baby!"); setTimeout("new RoomPropsService(document.location.href.split('/')[3],true,true,1,5);", 300); setTimeout("new ModerationForceSkipService;", 600); setTimeout("new RoomPropsService(document.location.href.split('/')[3],false,true,1,5);", 900); } if (Models.room.data.media.duration > 481) { API.sendChat("/me auto skip ligado, música com mais de 6 minutos seram puladas."); setTimeout("new RoomPropsService(document.location.href.split('/')[3],true,true,1,5);", 300); setTimeout("new ModerationForceSkipService;", 600); setTimeout("new RoomPropsService(document.location.href.split('/')[3],false,true,1,5);", 900); } } function populateUserlist() { var mehlist = ''; var wootlist = ''; var undecidedlist = ''; var a = API.getUsers(); var totalMEHs = 0; var totalWOOTs = 0; var totalUNDECIDEDs = 0; var str = ''; var users = API.getUsers(); var myid = API.getSelf(); for (i in a) { str = '' + a[i].username + ''; if (typeof (a[i].vote) !== 'undefined' && a[i].vote == -1) { totalMEHs++; mehlist += str; } else if (typeof (a[i].vote) !== 'undefined' && a[i].vote == +1) { totalWOOTs++; wootlist += str; } else { totalUNDECIDEDs++; undecidedlist += str; } } var totalDECIDED = totalWOOTs + totalMEHs; var totalUSERS = totalDECIDED + totalUNDECIDEDs; var totalMEHsPercentage = Math.round((totalMEHs / totalUSERS) * 100); var totalWOOTsPercentage = Math.round((totalWOOTs / totalUSERS) * 100); if (isNaN(totalMEHsPercentage) || isNaN(totalWOOTsPercentage)) { totalMEHsPercentage = totalWOOTsPercentage = 0; } mehlist = ' ' + totalMEHs.toString() + ' (' + totalMEHsPercentage.toString() + '%)' + mehlist; wootlist = ' ' + totalWOOTs.toString() + ' (' + totalWOOTsPercentage.toString() + '%)' + wootlist; undecidedlist = ' ' + totalUNDECIDEDs.toString() + undecidedlist; if ($('#side-left .sidebar-content').children().length > 0) { $('#side-left .sidebar-content2').append(); } $('#side-left .sidebar-content2').html(' users: ' + API.getUsers().length + ' '); var spot = Models.room.getWaitListPosition(); var waitlistDiv = $(' ').addClass('waitlistspot').text('waitlist: ' + (spot !== null ? spot + ' / ' : '') + Models.room.data.waitList.length); $('#side-left .sidebar-content2').append(waitlistDiv); $('#side-left .sidebar-content2').append(' '); $(".meanlist").append( ' meh list:' + mehlist + ' ' + ' woot list:' + wootlist + ' ' ); } function checkMentioned() { if(timePassed >= timeToWait) { clearInterval(timer); mentioned = false; timePassed = 0; } else { timePassed = timePassed + 601; } } function checkClicked() { if (clickPassed >= clickWait) { clearInterval(clickTimer); clicked = false; clickPassed = 0; } else { clickPassed = clickPassed + 601; } } function checkSkipped() { if (skipPassed >= skipWait) { clearInterval(skipTimer); skipped = false; skipPassed = 600; } else { skipPassed = skipPassed + 500; } } $('#plugbot-css').remove(); $('#plugbot-js').remove(); $('#chat-messages').append(' Bem vindo auto-skip editado pelo Rafael Moraes 1.0 '); $('body').prepend('' + "\n" + styles.join("\n") + "\n" + ''); $('body').append(' ' + ' ||| ' + ' ' + ' ' + ' ' + ' ||| ' + ' ' + ' ' + ' '); $('body').append('');
CoderAvi / Download Buttonit is a simple download button animation using html , css and javascript.
dira / CSS3 Stylish ButtonsPresenting a Sass mixin for generating stylish, colored CSS3 buttons. Also generate the CSS for a specific color, if you don't use Sass.
joelthorner / Simple Button ChecksSimple button checks is a simple plugin for transform checkbox inputs into html buttons for css customize.
andfanilo / Streamlit Css ButtonPimp your Streamlit button through CSS
oturra / Ios SwitcherSwitcher like iOS switch button in pure CSS.
karl-run / React Dark ThemeA dark theme toggle button with CSS variables
dhanielcodes / BotonuiGet amazing button and hover styles for your website and webapp UIs by just adding specified CSS classes to your tags
logicspark / Awesome Social ButtonEasy to use social media button collection with Vue.js or HTML & CSS integration
zayennn / Funny Toggle Button🎛️ Funny Toggle Button — a playful toggle button built with HTML & CSS. Switch it on, switch it off, and enjoy the quirky animations. Small, interactive, and guaranteed to make clicking more fun. ✨
phoenixdev100 / Form Validationa simple sample form created using HTML, CSS, and JavaScript. The form includes various input fields such as text fields, radio buttons, checkboxes, and a submit button. CSS is used for styling to make the form visually appealing, while JavaScript is used to validate user inputs and handle form submission.
Iqbolshoh / Javascript Mobile Menu📱 A simple and responsive mobile menu template built with HTML, CSS, and JavaScript. 🌐 Features a navigation bar 🧭 that adapts smoothly to desktop 🖥️ and mobile screens 📲, with a collapsible menu button 🍔 for easy mobile navigation. 🚀✨
raghav-wd / Advertyzement Intern AssignmentCreating a web application using create-react-app: 1. Create a User card grid layout having navbar showing any brand name 2. Add a button in the navbar saying 'Get Users', which makes an API call to get the user data 3. Use https://reqres.in/api/users?page=1 to get the data 4. Show a loader while the API fetches the data. 5. Bonus points for using custom CSS/SASS/styled-components. 6. Bonus points for clean code.
androidcss / Css3 Floating ButtonWith a power of css3 animation it is possible to implement css3 floating button only with css and without the use of javascript or jquery library. This tutorial explains 3 different versions of css3 floating button. For tutorial link http://androidcss.com/css/css3-floating-button-tutorial/
trananhtuat / Switch Button Html Css JsSmooth switch button use only HTML, CSS, Javascript
justalever / Tailwindcss Button ComponentsTailwind CSS Button Components built with Vite, Vue, and Tailwind JIT
shama / Button StylesModular CSS button styles