您现在的位置是:群英 > 开发技术 > web开发
使用JS实现十类美观的页面动态效果
Admin发表于 2022-05-26 17:28:31588 次浏览
相信很多人对“使用JS实现十类美观的页面动态效果”都不太了解,下面群英小编为你详细解释一下这个问题,希望对你有一定的帮助

1、鼠标点击弹出爱心

代码

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>document</title>
</head>
 
<body>
    <!-- 网页鼠标点击特效(爱心) -->
    <script type="text/javascript">
         ! function (e, t, a) {
            function r() {
                for (var e = 0; e < s.length; e++) s[e].alpha <= 0 ? (t.body.removechild(s[e].el), s.splice(e, 1)) : (s[
                        e].y--, s[e].scale += .004, s[e].alpha -= .013, s[e].el.style.csstext = "left:" + s[e].x +
                    "px;top:" + s[e].y + "px;opacity:" + s[e].alpha + ";transform:scale(" + s[e].scale + "," + s[e]
                    .scale + ") rotate(45deg);background:" + s[e].color + ";z-index:99999");
                requestanimationframe(r)
            }
 
            function n() {
                var t = "function" == typeof e.onclick && e.onclick;
                e.onclick = function (e) {
                    t && t(), o(e)
                }
            }
 
            function o(e) {
                var a = t.createelement("div");
                a.classname = "heart", s.push({
                    el: a,
                    x: e.clientx - 5,
                    y: e.clienty - 5,
                    scale: 1,
                    alpha: 1,
                    color: c()
                }), t.body.appendchild(a)
            }
 
            function i(e) {
                var a = t.createelement("style");
                a.type = "text/css";
                try {
                    a.appendchild(t.createtextnode(e))
                } catch (t) {
                    a.stylesheet.csstext = e
                }
                t.getelementsbytagname("head")[0].appendchild(a)
            }
 
            function c() {
                return "rgb(" + ~~(255 * math.random()) + "," + ~~(255 * math.random()) + "," + ~~(255 * math
                    .random()) + ")"
            }
            var s = [];
            e.requestanimationframe = e.requestanimationframe || e.webkitrequestanimationframe || e
                .mozrequestanimationframe || e.orequestanimationframe || e.msrequestanimationframe || function (e) {
                    settimeout(e, 1e3 / 60)
                }, i(
                    ".heart{width: 10px;height: 10px;position: fixed;background: #f00;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);}.heart:after,.heart:before{content: '';width: inherit;height: inherit;background: inherit;border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%;position: fixed;}.heart:after{top: -5px;}.heart:before{left: -5px;}"
                ), n(), r()
        }(window, document);
    </script>
</body>
 
</html>

2、鼠标点击弹出文字

代码

<!doctype html>
<html lang="en">
 
<head>
    <meta charset="utf-8">
    <title>document</title>
</head>
 
<body>
    <script>
        (function () {
            var a_idx = 0;
            window.onclick = function (event) {
                var a = new array("富强", "民主", "文明", "和谐", "自由", "平等", "公正", "法治", "爱国",
                    "敬业", "诚信", "友善");
 
                var heart = document.createelement("b"); //创建b元素
                heart.onselectstart = new function('event.returnvalue=false'); //防止拖动
 
                document.body.appendchild(heart).innerhtml = a[a_idx]; //将b元素添加到页面上
                a_idx = (a_idx + 1) % a.length;
                heart.style.csstext = "position: fixed;left:-100%;"; //给p元素设置样式
 
                var f = 16, // 字体大小
                    x = event.clientx - f / 2, // 横坐标
                    y = event.clienty - f, // 纵坐标
                    c = randomcolor(), // 随机颜色
                    a = 1, // 透明度
                    s = 1.2; // 放大缩小
 
                var timer = setinterval(function () { //添加定时器
                    if (a <= 0) {
                        document.body.removechild(heart);
                        clearinterval(timer);
                    } else {
                        heart.style.csstext = "font-size:16px;cursor: default;position: fixed;color:" +
                            c + ";left:" + x + "px;top:" + y + "px;opacity:" + a + ";transform:scale(" +
                            s + ");";
 
                        y--;
                        a -= 0.016;
                        s += 0.002;
                    }
                }, 15)
 
            }
            // 随机颜色
            function randomcolor() {
 
                return "rgb(" + (~~(math.random() * 255)) + "," + (~~(math.random() * 255)) + "," + (~~(math
                .random() * 255)) + ")";
 
            }
        }());
    </script>
</body>
 
</html>

3、鼠标点击弹出烟花波纹

代码

<html>
<head>
 
</head>
<body>
<script>
function clickeffect() {
  let balls = [];
  let longpressed = false;
  let longpress;
  let multiplier = 0;
  let width, height;
  let origin;
  let normal;
  let ctx;
  const colours = ["#f73859", "#14ffec", "#00e0ff", "#ff99fe", "#faf15d"];
  const canvas = document.createelement("canvas");
  document.body.appendchild(canvas);
  canvas.setattribute("style", "width: 100%; height: 100%; top: 0; left: 0; z-index: 99999; position: fixed; pointer-events: none;");
  const pointer = document.createelement("span");
  pointer.classlist.add("pointer");
  document.body.appendchild(pointer);
 
  if (canvas.getcontext && window.addeventlistener) {
    ctx = canvas.getcontext("2d");
    updatesize();
    window.addeventlistener('resize', updatesize, false);
    loop();
    window.addeventlistener("mousedown", function(e) {
      pushballs(randbetween(10, 20), e.clientx, e.clienty);
      document.body.classlist.add("is-pressed");
      longpress = settimeout(function(){
        document.body.classlist.add("is-longpress");
        longpressed = true;
      }, 500);
    }, false);
    window.addeventlistener("mouseup", function(e) {
      clearinterval(longpress);
      if (longpressed == true) {
        document.body.classlist.remove("is-longpress");
        pushballs(randbetween(50 + math.ceil(multiplier), 100 + math.ceil(multiplier)), e.clientx, e.clienty);
        longpressed = false;
      }
      document.body.classlist.remove("is-pressed");
    }, false);
    window.addeventlistener("mousemove", function(e) {
      let x = e.clientx;
      let y = e.clienty;
      pointer.style.top = y + "px";
      pointer.style.left = x + "px";
    }, false);
  } else {
    console.log("canvas or addeventlistener is unsupported!");
  }
 
 
  function updatesize() {
    canvas.width = window.innerwidth * 2;
    canvas.height = window.innerheight * 2;
    canvas.style.width = window.innerwidth + 'px';
    canvas.style.height = window.innerheight + 'px';
    ctx.scale(2, 2);
    width = (canvas.width = window.innerwidth);
    height = (canvas.height = window.innerheight);
    origin = {
      x: width / 2,
      y: height / 2
    };
    normal = {
      x: width / 2,
      y: height / 2
    };
  }
  class ball {
    constructor(x = origin.x, y = origin.y) {
      this.x = x;
      this.y = y;
      this.angle = math.pi * 2 * math.random();
      if (longpressed == true) {
        this.multiplier = randbetween(14 + multiplier, 15 + multiplier);
      } else {
        this.multiplier = randbetween(6, 12);
      }
      this.vx = (this.multiplier + math.random() * 0.5) * math.cos(this.angle);
      this.vy = (this.multiplier + math.random() * 0.5) * math.sin(this.angle);
      this.r = randbetween(8, 12) + 3 * math.random();
      this.color = colours[math.floor(math.random() * colours.length)];
    }
    update() {
      this.x += this.vx - normal.x;
      this.y += this.vy - normal.y;
      normal.x = -2 / window.innerwidth * math.sin(this.angle);
      normal.y = -2 / window.innerheight * math.cos(this.angle);
      this.r -= 0.3;
      this.vx *= 0.9;
      this.vy *= 0.9;
    }
  }
 
  function pushballs(count = 1, x = origin.x, y = origin.y) {
    for (let i = 0; i < count; i++) {
      balls.push(new ball(x, y));
    }
  }
 
  function randbetween(min, max) {
    return math.floor(math.random() * max) + min;
  }
 
  function loop() {
    ctx.fillstyle = "rgba(255, 255, 255, 0)";
    ctx.clearrect(0, 0, canvas.width, canvas.height);
    for (let i = 0; i < balls.length; i++) {
      let b = balls[i];
      if (b.r < 0) continue;
      ctx.fillstyle = b.color;
      ctx.beginpath();
      ctx.arc(b.x, b.y, b.r, 0, math.pi * 2, false);
      ctx.fill();
      b.update();
    }
    if (longpressed == true) {
      multiplier += 0.2;
    } else if (!longpressed && multiplier >= 0) {
      multiplier -= 0.4;
    }
    removeball();
    requestanimationframe(loop);
  }
 
  function removeball() {
    for (let i = 0; i < balls.length; i++) {
      let b = balls[i];
      if (b.x + b.r < 0 || b.x - b.r > width || b.y + b.r < 0 || b.y - b.r > height || b.r < 0) {
        balls.splice(i, 1);
      }
    }
  }
}
clickeffect();//调用特效函数
</script>
</body>
</html>

4、鼠标小星星拖尾跟随

代码

<!doctype html>
<html lang="en">
 
<head>
    
</head>
 
<body>
    <span class="js-cursor-container"></span>
    <script>
        (function fairydustcursor() {
 
            var possiblecolors = ["#d61c59", "#e7d84b", "#1b8798"]
            var width = window.innerwidth;
            var height = window.innerheight;
            var cursor = { x: width / 2, y: width / 2 };
            var particles = [];
 
            function init() {
                bindevents();
                loop();
            }
 
            // bind events that are needed
            function bindevents() {
                document.addeventlistener('mousemove', onmousemove);
                window.addeventlistener('resize', onwindowresize);
            }
 
            function onwindowresize(e) {
                width = window.innerwidth;
                height = window.innerheight;
            }
 
            function onmousemove(e) {
                cursor.x = e.clientx;
                cursor.y = e.clienty;
 
                addparticle(cursor.x, cursor.y, possiblecolors[math.floor(math.random() * possiblecolors.length)]);
            }
 
            function addparticle(x, y, color) {
                var particle = new particle();
                particle.init(x, y, color);
                particles.push(particle);
            }
 
            function updateparticles() {
 
                // updated
                for (var i = 0; i < particles.length; i++) {
                    particles[i].update();
                }
 
                // remove dead particles
                for (var i = particles.length - 1; i >= 0; i--) {
                    if (particles[i].lifespan < 0) {
                        particles[i].die();
                        particles.splice(i, 1);
                    }
                }
 
            }
 
            function loop() {
                requestanimationframe(loop);
                updateparticles();
            }
 
            /**
             * particles
             */
 
            function particle() {
 
                this.character = "*";
                this.lifespan = 120; //ms
                this.initialstyles = {
                    "position": "fixed",
                    "display": "inline-block",
                    "top": "0px",
                    "left": "0px",
                    "pointerevents": "none",
                    "touch-action": "none",
                    "z-index": "10000000",
                    "fontsize": "25px",
                    "will-change": "transform"
                };
 
                // init, and set properties
                this.init = function (x, y, color) {
 
                    this.velocity = {
                        x: (math.random() < 0.5 ? -1 : 1) * (math.random() / 2),
                        y: 1
                    };
 
                    this.position = { x: x + 10, y: y + 10 };
                    this.initialstyles.color = color;
 
                    this.element = document.createelement('span');
                    this.element.innerhtml = this.character;
                    applyproperties(this.element, this.initialstyles);
                    this.update();
 
                    document.queryselector('.js-cursor-container').appendchild(this.element);
                };
 
                this.update = function () {
                    this.position.x += this.velocity.x;
                    this.position.y += this.velocity.y;
                    this.lifespan--;
 
                    this.element.style.transform = "translate3d(" + this.position.x + "px," + this.position.y + "px, 0) scale(" + (this.lifespan / 120) + ")";
                }
 
                this.die = function () {
                    this.element.parentnode.removechild(this.element);
                }
 
            }
 
            /**
             * utils
             */
 
            // applies css `properties` to an element.
            function applyproperties(target, properties) {
                for (var key in properties) {
                    target.style[key] = properties[key];
                }
            }
 
            if (!('ontouchstart' in window || navigator.msmaxtouchpoints)) init();
        })();    
    </script>
</body>
 
</html>

5、鼠标粒子随心拖尾跟随

代码

<!doctype html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>粒子随心动画</title>
    <script src="http://cdn.sucai8.cn/cdn/jquery/jquery-1.10.2.js"></script>
    <style>
      body {
        overflow: hidden;
        margin: 0;
      }
 
      .twitter:hover a {
        transform: rotate(-45deg) scale(1.05);
      }
      .twitter:hover i {
        color: #21c2ff;
      }
      .twitter a {
        bottom: -40px;
        right: -75px;
        transform: rotate(-45deg);
      }
      .twitter i {
        bottom: 7px;
        right: 7px;
        color: #00aced;
      }
 
      .social-icon a {
        position: absolute;
        background: white;
        color: white;
        box-shadow: -1px -1px 20px 0px rgba(0, 0, 0, 0.3);
        display: inline-block;
        width: 150px;
        height: 80px;
        transform-origin: 50% 50%;
        transition: 0.15s ease-out;
      }
      .social-icon i {
        position: absolute;
        pointer-events: none;
        z-index: 1000;
        transition: 0.15s ease-out;
      }
 
      .youtube:hover a {
        transform: rotate(45deg) scale(1.05);
      }
      .youtube:hover i {
        color: #ec4c44;
      }
      .youtube a {
        bottom: -40px;
        left: -75px;
        transform: rotate(45deg);
      }
      .youtube i {
        bottom: 7px;
        left: 7px;
        color: #e62117;
      }
    </style>
  </head>
  <body>
    <canvas></canvas>
 
    <script>
      "use strict";
 
      // initial setup
      var canvas = document.queryselector("canvas");
      var c = canvas.getcontext("2d");
 
      canvas.width = innerwidth;
      canvas.height = innerheight;
 
      // variables
      var mouse = {
        x: innerwidth / 2,
        y: innerheight / 2 - 80,
      };
 
      var colors = ["#00bdff", "#4d39ce", "#088eff"];
 
      // event listeners
      addeventlistener("mousemove", function (event) {
        mouse.x = event.clientx;
        mouse.y = event.clienty;
      });
 
      addeventlistener("resize", function () {
        canvas.width = innerwidth;
        canvas.height = innerheight;
 
        init();
      });
 
      // utility functions
      function randomintfromrange(min, max) {
        return math.floor(math.random() * (max - min + 1) + min);
      }
 
      function randomcolor(colors) {
        return colors[math.floor(math.random() * colors.length)];
      }
 
      // objects
      function particle(x, y, radius, color) {
        var _this = this;
 
        var distance = randomintfromrange(50, 120);
        this.x = x;
        this.y = y;
        this.radius = radius;
        this.color = color;
        this.radians = math.random() * math.pi * 2;
        this.velocity = 0.05;
        this.distancefromcenter = {
          x: distance,
          y: distance,
        };
        this.prevdistancefromcenter = {
          x: distance,
          y: distance,
        };
        this.lastmouse = { x: x, y: y };
 
        this.update = function () {
          var lastpoint = { x: _this.x, y: _this.y };
          // move points over time
          _this.radians += _this.velocity;
 
          // drag effect
          _this.lastmouse.x += (mouse.x - _this.lastmouse.x) * 0.05;
          _this.lastmouse.y += (mouse.y - _this.lastmouse.y) * 0.05;
 
          // circular motion
          _this.distancefromcenter.x =
            _this.prevdistancefromcenter.x + math.sin(_this.radians) * 100;
          _this.distancefromcenter.y =
            _this.prevdistancefromcenter.x + math.sin(_this.radians) * 100;
 
          _this.x =
            _this.lastmouse.x +
            math.cos(_this.radians) * _this.distancefromcenter.x;
          _this.y =
            _this.lastmouse.y +
            math.sin(_this.radians) * _this.distancefromcenter.y;
 
          _this.draw(lastpoint);
        };
 
        this.draw = function (lastpoint) {
          c.beginpath();
          c.strokestyle = _this.color;
          c.linewidth = _this.radius;
          c.moveto(lastpoint.x, lastpoint.y);
          c.lineto(_this.x, _this.y);
          c.stroke();
          c.closepath();
        };
      }
 
      // implementation
      var particles = undefined;
      function init() {
        particles = [];
 
        for (var i = 0; i < 50; i++) {
          var radius = math.random() * 2 + 1;
          particles.push(
            new particle(
              canvas.width / 2,
              canvas.height / 2,
              radius,
              randomcolor(colors)
            )
          );
        }
      }
 
      // animation loop
      function animate() {
        requestanimationframe(animate);
        c.fillstyle = "rgba(255, 255, 255, 0.05)";
        c.fillrect(0, 0, canvas.width, canvas.height);
 
        particles.foreach(function (particle) {
          particle.update();
        });
      }
 
      init();
      animate();
    </script>
  </body>
</html>
 

6、鼠标笑脸跟随+仙女棒+泡泡+雪花+点击烟花效果(自由组合)

代码

<!doctype html>
<html lang="en">
 
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>document</title>
</head>
 
<body>
    <!--光标特效仙女棒-->
    <script src="https://blog-static.cnblogs.com/files/axqa/fairydustcursor.js"></script>
    <!--光标之泡泡-->
    <script src="https://blog-static.cnblogs.com/files/axqa/bubblecursor.js"></script>
    <!--笑脸-->
    <script src="https://blog-static.cnblogs.com/files/axqa/emojicursor.js"></script>
    <!--雪花-->
    <script src="https://blog-static.cnblogs.com/files/axqa/snowflakecursor.js"></script>
    <!-- 点击后出现烟花效果 -->
    <script src="https://blog-static.cnblogs.com/files/axqa/cursor-effects.js"></script>
 
</body>
 
</html>

7、樱花特效

代码

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title></title>
</head>
 
<body>
</body>
 
<script>
            var stop, staticx;
			var img = new image();
			img.src = "data:image/png;base64,ivborw0kggoaaaansuheugaaaugaaaewcayaaadvzeifaaaacxbiwxmaaacyaaaamagiyikyaaahg2luwhrytuw6y29tlmfkb2jllnhtcaaaaaaapd94cgfja2v0igjlz2lupslvu78iiglkpsjxnu0wtxbdzwhpshpyzvn6tlrjemtjowqipz4gphg6eg1wbwv0ysb4bwxuczp4psjhzg9iztpuczptzxrhlyigedp4bxb0az0iqwrvymugwe1qienvcmugns42lwmxndignzkumtywoti0lcaymde3lza3lzezltaxoja2ojm5icagicagicaipia8cmrmoljerib4bwxuczpyzgy9imh0dha6ly93d3cudzmub3jnlze5otkvmdivmjitcmrmlxn5bnrhec1ucymipia8cmrmokrlc2nyaxb0aw9uihjkzjphym91dd0iiib4bwxuczp4bxbsawdodhm9imh0dha6ly9ucy5hzg9izs5jb20vegfwlzeumc9yawdodhmviib4bwxuczp4bxbntt0iahr0cdovl25zlmfkb2jllmnvbs94yxavms4wl21tlyigeg1sbnm6c3rszwy9imh0dha6ly9ucy5hzg9izs5jb20vegfwlzeumc9zvhlwzs9szxnvdxjjzvjlzimiihhtbg5zonn0rxz0psjodhrwoi8vbnmuywrvymuuy29tl3hhcc8xljavc1r5cguvumvzb3vyy2vfdmvudcmiihhtbg5zonhtcd0iahr0cdovl25zlmfkb2jllmnvbs94yxavms4wlyigeg1sbnm6zgm9imh0dha6ly9wdxjslm9yzy9kyy9lbgvtzw50cy8xljeviib4bwxuczpwag90b3nob3a9imh0dha6ly9ucy5hzg9izs5jb20vcghvdg9zag9wlzeumc8iihhtcfjpz2h0czpnyxjrzwq9ikzhbhnliib4bxbnttppcmlnaw5hbervy3vtzw50suq9inhtcc5kawq6ndfdmjqxqjyynjiwnjgxmtgwodnemje2mdazotu1ndqiihhtce1nokrvy3vtzw50suq9imfkb2jlomrvy2lkonbob3rvc2hvcdozndvjowvioc04ndc4ltfkndctogrjmi0yzdkyognhytyxzwqiihhtce1nokluc3rhbmnlsuq9inhtcc5pawq6yjazn2zimgitntu5mi0xyjrklwjjzgqtowu4ngexmdjimgm2iib4bxa6q3jlyxrvclrvb2w9ikfkb2jlifbob3rvc2hvccbdqyaov2luzg93cykiihhtcdpdcmvhdgveyxrlpsiymde4lta1lta5vde0ojq5ojm3kza4ojawiib4bxa6tw9kawz5rgf0zt0imjaxoc0wns0wovqxndo1mtoynsswodowmcigeg1wok1ldgfkyxrhrgf0zt0imjaxoc0wns0wovqxndo1mtoynsswodowmcigzgm6zm9ybwf0psjpbwfnzs9wbmciihbob3rvc2hvcdpdb2xvck1vzgu9ijmiihbob3rvc2hvcdpjq0nqcm9mawxlpsjzukdcielfqzyxoty2ltiumsi+idx4bxbnttpezxjpdmvkrnjvbsbzdfjlzjppbnn0yw5jzulepsj4bxauawlkojeymjvlzwe3lteyy2qtmty0nc04zdazlwfjote2ztaxzdq1yyigc3rszwy6zg9jdw1lbnrjrd0idxvpzdoxrdiwnufgnjzcrdlfntexoum5remwmzg2rjleqjfgnyivpia8eg1wtu06sglzdg9yet4gphjkzjptzxe+idxyzgy6bgkgc3rfdnq6ywn0aw9upsjzyxzlzcigc3rfdnq6aw5zdgfuy2vjrd0ieg1wlmlpzdphymmznjizmy1hownklwnindqtodviyi0zztgymjewymixmjyiihn0rxz0ondozw49ijiwmtgtmdutmdlumtq6nte6mjurmdg6mdaiihn0rxz0onnvznr3yxjlqwdlbnq9ikfkb2jlifbob3rvc2hvccbdqyaymde4ichxaw5kb3dzksigc3rfdnq6y2hhbmdlzd0ilyivpia8cmrmomxpihn0rxz0omfjdglvbj0ic2f2zwqiihn0rxz0omluc3rhbmnlsuq9inhtcc5pawq6yjazn2zimgitntu5mi0xyjrklwjjzgqtowu4ngexmdjimgm2iibzdev2ddp3agvupsiymde4lta1lta5vde0ojuxoji1kza4ojawiibzdev2ddpzb2z0d2fyzufnzw50psjbzg9izsbqag90b3nob3agq0mgmjaxocaov2luzg93cykiihn0rxz0omnoyw5nzwq9ii8ilz4gpc9yzgy6u2vxpia8l3htce1nokhpc3rvcnk+idwvcmrmokrlc2nyaxb0aw9upia8l3jkzjpsrey+idwvedp4bxbtzxrhpia8p3hwywnrzxqgzw5kpsjyij8+xcpboaaapbxjrefuenrs/cmsi8u2liiplnmhosnc59z7jyxhjsg1oggn/ewo+sp8b34jhrywcitk1at7786mbnbbwonlzm4oolrivc8+t45bcjiqjibqukuvtlupcdva1ra2ta3zzdthsk1tbwtbg0bua1vb2tygknva1ra2tqhktra1rw1talmtbw1rwxtabmtb29rwbpdb2ta2trub5la2ta1tbqc5rw1ta1sbqg5rw9va1gaq29rwtra1aes2trwtbw1ra8htbwtb29oaclvb2ta2nodc1ra2ta0nile1rw1tawpibw1rw9vaahjb29rwtjaa3na2trwtdsc3ta1tbwsdyg1ta1vb2gbyw9va1ry2gnzwtra1rw1talmtbw1rwxtabmtb29rwbpdb2ta2trub5la2ta1tbqc5rw1ta1sbqg5rw9va1gaq29rwtra1aes2trwtbw0aua1tbwtbg0bua1vb2ty/3xr+o7+bf/2//z/+1ofpaigjergbmj7m8fue+o1a7lljcxyw+5hwzmbgqnlgkiftrsgmyyujbynhon6aadimogdcyiqbcflwwnedw24hha5azhjhjxyqwztadlgmhjphdrnfjo6plphbnojdgzgezsigoahpr/ypwxv+28monobghieaixce8lkzuag/vrp7o+ezacmrynlxojbyxj4t/8su4+ugpe3a++jg5yfe/lvd73/b4evfm17/zfe//y3h6ujsj8f/9n8m/of/cnz/d0ceghes/t///q7hhfg/+/8jt0fabgqtziekymygf/0vbh8n3/99wv/rp/1/sds6/i//+t8dzhcatofwzpj4/r3/mhkompbz/47db+cy8lz/w/nnqh4cu88dppsru4abqwbqcrphddx/pcgbi9f7jlxbrfhpyw+n4mokpaausacbmfv30f/rf+f+8m+gpypw8zrhl0imamk5kgaowcy4ib6r8po+/hiv/5c/lyyve6g8tnh5p/3f/q8bwv2za+tfz7htvkby4sccoxcu4eaye04hxb0hoygeatajtsgykp2iqqbocakkagmbqcdga47ha3amg0cqkhmogrhezamoipddhireqyzxjqbdsqwygfgldwet2/3c2lulx9fxzjhkk4hs8qtmsd2oaihkir4wzmfkxnmrgi7c5xpxt3+lv+0gvl47/r/fbgbcjpacypwvaicbspse/v0vsjl49if8+/c/iemwciqbccqlubebloofi4k5wanygcgaipee5xsapinjsllcqkavqnfstptcujoakxtnzqjiwtix2xigpuyag2xsdvpj9/+apy3zooruorkvd7ocozflxaugmhegrebyf1p8x2pydxukitvexibhewfit21bg0d+hwoqdgjwiersaf622cfngpsh5yyphpck4s7yeecjqqhasorj/ixarhibovpahsthnkckpzwcvnvtb1ugi7/dnpunr9mqyjjoggwlooovuacdbawv6clen9sxjwzoee/lczgakq4okzcnhbuwowo/n+m+u4pwsbd4dqlcijefwvr/cldsgywvp+smxx0hgsce8h7/037cwy7yy1cpeyqzwaxe3j9febkswof3p7q7cuq7d0oycbpkifvdnqaulnvohae0c7p2acebtbwijhcmyijhajggwicsmuqtnedcb7m/7f6rv2xlb2781itp6bdpsgcrgnhfhtqjchnv9egosilijkancivlxqsqbwc5aetfm4ikacdhhthulbtxjysjeymatxhgeqyqk5gflz3daowslxgjyiphyamvjiv9xsic9xghg4hidfbzuxym5qcushxbyifdwysxerlkckmekaacedfrerukmcxa0armiin5ehbict2jkappgmvhshhrjzoqu5xexqpw43unqcoqffp0ieaegdshe9nz4duck6aa9nmaclylt+ynxylwc4cbywlghotjzfxj8rtfh8zne14pfqp4ctke0eboeg0gmjlck3j2lx9xirfz2kjbihsvpx9ngi6qpgr/b/qu6ynio8khtpycu0iwcrw+nj9hioajiarotja/fhweribluogqhshszv9j3a7bdsd/jil2xhqgiotcnjrotoisw9rysi2tnmzz7iehwsinhsjyyybc7n8j7hmkas7iahgfyrrxngfww2soeqm5/e2ivz3atoy3hiemefgwtjkiqgrjgfsieuu1wazkgumem0ohgwmyo3awjug4b3iidlnjlqnyfj/jnmxvfxcuxqnw2ahjjxalgpbpudacheposjsgjaz4mb7jpx2/zyuaapsuibbd0+v77nlwvej4pfebhn9o9h20aenowcqe5fgvrriu6wsjcrznbiraqbmug9wpcv+a9a66rr4vp7vk7hiyqtc3pckwcjo+c26atij3r4phalsidsbswfeasaeiojyjrgagfgq5lrbrtdjwbpb/f2ic910i9r1ohnq1vpoml9splfsz7xkc/axz7v5wcamy4zviedmlgbygvedtysqkxyji04bnbyy49khz8bbegbkbkp9ucsbav9+k9drenxuqleqc9tnqfz3awhjit7ibbmyghqu8axke+agyrxs5c4aufo6ap/d4cb14+ha+98tr74lxskwleunv7y7a5154+knsfi8fw0d/wjiaw+uwg7llt7t8qsclhb8b/abxvci30r6j/e7yrearpresexhhgeeaviveibnrbuwyip/uln/o/i53wn3hzhbm5uwcjhey4cwwy0ljoeki++dtdquois80tuzwv1z3c1fhd4g1kjq0afyaozwovfyhryq/rq0g/z4gyzq/ipxtfyyxoqjpyrgzycqoduduyboins6nmksdkyovwqxkaieiil1wd1hkyidpjgnt1eqeeswr5e8dkgyfzc2lriktsp1y5ylswyqaql2xodaacghi9h47gfrj+02r0gnaaiewabjahumpdpoqzcbjsbn4fdk8/mzwfk/l5v34t78zyhmzctwykwxo3qfw/h349jux0w7/y+7f4hashezpawb64wivml0y41mo7yc+b0diher3an9p9h3ck4qxci8ax5h4dhjhlwohlamuncl1gps7msielknzqgazres4rwqgr9gymcqev3bqktnzu3y05fyei7y8rxujqs2nhdqsiuwkrh0phoasawglxrfnyiiglikjadu3tqhk32upprgturn1o2swrg1hu9qfkustptqro/tntcu6nkyjyzl8moqdajibk8plgc1humnbqeal0egzakmfbmehu2owrgsdieqmq9c3ntrodjwyw3sawdps2jcuzzeujj0ambmtixsidnnoheod8radciigy/ue+m/ll7orr2+o//9/ss3qhnwzmtuf/yfwb/9zsj7sv3x8p/yzlnz7s+hvyp9c2t8a+4abz3a8efwo4g8k/ybho8hval4b/bvevwlfalwaeih4vej2h3se6x3so+qfpfpqebirwo6uswy7yi9aggmmyvkicga50jjgheeofay6bk5injl2bubrjrmuosi5rdae0emkxkcjilxhm6sbkavf/rgurugzaerfc5nexm/mgamowcgiqadn2qgpoz4evks50ahjlxikkpnlj7uaptpylt2z+lvlukpzcwan8ro8vksvgwxhcs9ernvk7cyadbq6zac+swsjjyiuhenj6vvgdi5g2nejrr5ygjxa23o82veg/pitszmneh4xpgrmi8am7hnl4xlrnwhz9t/9d3gandz/h//tvzxzgp990ctov8hsfwbtpwh2g42vaj8b/bbb8dfivpn4afgc4hnic4ar4gbgljqgoosfdp0epcn9kvmimtfsihobepggaiznystaizcjtiasyanmbnmcmqmeia12qminjwu0oqgxz40zjei7lfpkrmhwokkp/soatw1ui9luigi9lqwbcela1gaqf5dlahknwkr9owk4lu4t5zbx0xwgcljxqnzbgdkqybsaqtrqwhwfazju5a/wbyzu+abistgvzgwqy2t721agdsfdkrkx+cnmc5inenruss3znzlzj9tlfjmc8dkuzciwggzksechjwzpmf9yu7fjutiopvftxs/uipvb756epmt7awgyargh8wv0vg6y1+t2yjb8liz9n0rdd5l9s7tfsut4n0h7tzt7deqlydsaz2b6bflmyf/qi0npezeode1bbbgtritcyjyagkuksv6ekcvqjiirgkqnocuqa+gdkblgawylmg0gkkedmawpy0xhhc2rwzpgyvh+twgwpi0kc9lhsormrdspezi8gqhmuiystlk5wlkb4wkdya0g/6jkpjmysif7ezo4tc5wqqvas7gwjrqqic1mhjg0traboawo9o0aszeanxuapetk77ih07hdueqkpq1t7r9twrtn8klejcxrbn+oksmp9hjq1eisbi0amuohqzqowdrz2gf5imzplxonbjxg338xrrikjhbh4ux//p/ml0jpgbrxks8mfjokvxnto5l9zwz4jtb8n0zppyglb6q9c/yk8jst/q3kd4a7gclcdmb+a8b5xnnncdab+dzuvuyfdamcccybsarggdsuksyavyixkvurresgwahwongq5qgzowathr2tjhsxjsdgux4+/xs7+rnpngo4acnpjsos6fhnqlaabe4xuuy2/+zvvkxzg0d+5suvs/rmdomzd40ya51icsaspeifhjcy4hkk0qxwckmm4sefv4z6zj+q0q7uir1gq9aeqyzpas9u+bimbybxchiishndliwtw3mjxrpo9pbxdlt27jpmrk1umartk0mjoown40e2//svexg62n50e/6xh3ps4p4yni3ba5l9c2m/uek3mr0afkhznzl9c8jfmng32pad5dez/uzl30r7htmoixvq9rubtvr5cnkiqpa61b3d2qwgouhlcxii0nooqcpumhiucwq0wg1e0g7ebgcmuimgug2qbrmpzdiihaamoayyjqmspgeeh4mvnmuujzk+cdjhhx2n8hqmlu5w2upu2ighuomfuryjmkul3zwt2dygkh/n+lfsdlm6hsjkjpgw0pcwfeo5vjthrbgb0tb5xocumumaaaycjmnaytqu7nzemqmndmasqbfhnxjyj46xdmnlrm0uxce6drlfzse7gijkpgpuiupcyxydhk/x+aenl5++e/7g0+j2bezfeu03o73s+ulwbbdvnpsblf2nkx2d2uu5vil2hcbfmizvmpugzm8wvsdsqtrfdmliszlmwnlwc65ztghygh/ds4w2lte8zicnae4drktmzgniykwjqagmjncaq80yt8hick9wgsktujiyrvvyksjajinscqtxmbnm2bwuiquruwfeheolrby5tzzhmsarn4eszrmfh9g9agpo1kb1wxta/l0b0k872q5mkci18wdi4qhmiwxuliihaeplbnxqz3ojrpvewplyydqukif9wwu6jfq0n2g610sqa6jrm2ruzlnuju872t3l0mrquinqnucdmsrxorl24/p/7pv//f/ozybeyonv0vdnlp1gpt9g9g3ke2ivmh6dpd8wdl8hpw80vslsgczxphjfs68kn2c2gzhbzfch560dxu4zmqpiots0b2ojrlwhydz6idgfj1zzfdxf+j4s5imuyd1gtcuftyqtzjmciesaxmbriqgsyaco/kwjp0xnpvednk6wtcizde+jwqhnfhasofgjnw6llpwmuyip59es1kh1wxta/r1hmvroazcpkno0up/zygh6qtnesponquhgnyvmtoppb39powx8auukn1mkzo16eei5fimxngqoitrpieew6gt3jzqpnmoatcuqhr1042hmuwtutxjmgo9m9s2mr6r9o9k3dmn3jptos99apspsc82+i9lvgnjvspqdzi+mkdhqksk9wzjaacyt/dpu1mqk5gl42803laict0qjyvupochcdnjhngasmjxuibjsk1wcef1rike00vnoxdagjgjj8zensoosbiolsqntsiynhog+ruxrjzozfpk0ktq8xf6jqt+xpnlzvvgljlxpooyqdr6169vaaplvn2kju7tx4dcutfkq2++jhaigywfifyihgplfo4zwgjvapxxs2lcbonjdl42avqw/lemezyhcqx0cugyngpsbnzrctjbdu72npxemlzbaa4omyyuzvthsn5kvol0i2sstfueyfynp8zonlyc/yui/idlvtokvtbeqe5idzayyu4seo3bbhlu12ce5bz5bspxmvbuunlatt2oxknjsmgfsipkune6l35xgskimyoj8iblda5bgtulncxpglianmb8bo0aput6kbimuvx/nqgptnmomhgxpokizmawicltkyxlf6zvcdmhc599pwxdlrjea/ctx7sgndtxkyqzplaxryh4yaiolxrcmgnfqumvunmqha64tyqelsokriysm4ppaixsokeopoxzwrk1qdhmmo8qszn2na5tdmr5eihk5pcenl459srvn0exvtok7lx1jslcwvdl4cto3pbi9wnsckdjvnlzai81eo76yvpestcx409fgydduwuzxc0mcpuzhc5qinpphu43dvfub0frqcxjka+qdwsrwgjdgsjaofeyjrzgtokf0vaplhcdluc4emoe0kaomiwzme5mdkxiecytbpexjriz6yb4rgj5ehzjrln1uof/o+lezahtxm9wcya0g/8pgdyqsd4r02th1jrpfo6ybkgtmakl4prxmtavre3vhcacnscy4hjqgticpjizmjvi0zhzcrlaoq7pptzn0bvro9fsktty72rbwhirjgo0txidpz8pa55tshuwvnhvlkh4zs39dgf13yyhdmh2lddkaeuq3kc8lwnyc2ujagkjcnvwkres4tjuxlkrwcsl2qkd+ffeqoz0ihs/rki0xhou0ckkoiusemmcoa5nopihab4cykcazdyakmhpevuias5hyg8xgmi3gni5hh3cfpn1kftwrxrqsaxe6jwpbp9sjyrwabnfzszqncl2lslq1ffhs+cei1t3wbpb/9+ixuuhokyclovrepom8omoiii9cug5dg/lqmimqrbkgbfbkobyqpty0pfg2qamclndg5lhimry+uw5rdatgknnlgup6tof5sv3a9c1z+s3s8mquxkh7jxqifceqvsmsmixm30c+wvgk8htseih5rtrkvpfbngaojamjtwix6zjxmmknajvaqz803wppxfxdnruuz9x6newjzwxxo05umsbgscncx4gubqs0g/secgi5wmyeyws1i5qv23cwtnbojou2pyesinnsgvkqn96p+zjgb//zcprygicbgl6mccsl9trf1gygfvso0vdryjgkr4z/bgsdyl8kgmxipyvki8zgzuie5td4yx3l0nxogbvrq1ollagid5tdfg0vdsxmozxfr22keo2ol0zntzms0duow4gozw9gt4mmid35sn8d+zxqpjjsb0zjbxxs7ttxkzzfmnjvspqadcuwqb7c7hvuiutaxslgyj90tuxyvli4yiyq6ibyrvxqvkjgc8u2dpvilu+tpuopffjugjkrguw+gyhtluueg96ecvimmsxlknsyi2jzu8azxulcjmsiljed5jrnyzv3u/kxn9nfpvrbufrgyxpuwhjwj3xqwvar887k6a9xgz3wcbznn7gkdsd/qpis4rldbdsmnx32og15qjnufcqho5g4n/g519tubqpdc6tsrruynnjqjzsjmogyzi1y6f1cupphwyygj9t5sktajenlynrhzl4taojfykk0vnilas8faf+r7bts+h6pdnlgey2/rzptfck5g1lapmeatnl7lqinn6w/afhirxaewhxw8/qznqbph43tk6c3ewtaa4cnuqrnjf1kjujriorxqpqangbwwnk9gozuznnryymdnac9w+b0ah9e/tu/kr+9+lezvt5q0bk0v3yujsrmzkthbkxg7oqz6wgwb0v2cj7asusnip/sgitqzfmk1vwljmlgbclp0l41xswnnbrzwaecsnwnhkuwgasyjshsceuqyqdmcowq5xaytcamlywtaucrno2vekqncngelj5pw0tkqtzxxsg5gsqwfgdktab4dnolkn2d2d+i3sgy5m3xejgglbhhtxgjfuxcdfracl3nwqwz0j1ovgu2mjgbtdydxzojx9rhp/gzn8ohu46gezanko9bc8azaboodmkjimiqoksgwpkwpipi7scoei4ib5aym5lrut7/nqfpqz6tjssnuwgaxsrwumsqslrwokssrkgn+srujewnip8xvqmclpojywfazlyf9qct9umwyqevyqetkicxgm1jrzod8xep7zp1a0lkbapm3ybngy6cfplnsxywn/lzx6fvenrgwg9mwwypifi6z/bcxg+gvzyi8ltjov9gfibfsa8s7kozvwd7uo9lbxrbeaei+0ylunpi1502ow8s+yutr8mfcao6p6csoj5ygcwwqekqo6ilbjexdgacmrury+he1u3abdbqlrir1a7grnok00tdbsx+fhrd9pbd8ugbcclvfpmeqlahwro3j3ppu21tapn3jyjlspq0uw73uqjjjokfctgyjpcyncmslzaycptphhlipk6e5diladpxs1eom4srhioeqdedpaucgjamswlpn5jpnvabad9ya4fkk0quwboqlzd7vmqpprljeseanyp9djsdgf/aop7dhqrheha5lypmkijz9m5ipphluql6dpvk9xmcpdpfjmxnn/aars6rovjtry2nkgigxgb8zjbheduqe8bo3aqy7kbwwawbb3ckczrzb+iisyle5tniygfexgncpr95pe4+frimlnf8jf6iqlcnltjlxdznz2vbg0d+3vfrzffrb5872dgocsoq44jy6g2htmlb2iih5t5tjlu5hao0a5tdm7dwmtjyobymiy27rd6b2xmrh/ge9d/7rvklpcelpkizvys8wtirlh2pwuewyw97qejrqhenl7au6llekswgrhlzfsydjuu02t9y8pvigel2e7y1d7qm1vyiln+dv0xuyl2y+dklabcr9afmo8engcmzr1kbqneeejrspdtctfpserk7jkwi9ntpge/fnweitmpapdqm17fjkvxtqvc0l0wf5reufa5trlopoisyllfpt8s027jyg0d+hrfk7unx6mfsiodwl8pjujbeoinh72zxllzohet2cue8mrmmgoujifxkytyvn0ifnrh/5pbezniryw7xpuskdfzmhbrvaf9h+azllzp9j9+q0jekcjvtosjifgp4xcinsacq8nk9se9anwaie5ds0+/tguxiovds9v6untcyawwlcfbzotoevjdyzargpuwjyd2giesokb9kyjkarlboychxwy5uowz2zeulussgwwb8kxshab4/mpbd+v27phor9epu2inhbult/bm7et6isfp6whmne1sbqp5lkxbtdsrmoawuh30kdy/lovpbz6yc1vk+l3ax7jlyn61+wcrzrxyy8zxvxmeynxkgv6bgpap2emisjhojubkwpdgcovqdq93g11dcwbfclnkr8eyzzwcpazcwmk7fcwa5l2rsgxibnkdpnpflxh5if4sbwuc2dlblrez1lnclgmc2j06zzknqoa8iyhyyk3vkqtpfvmj4eigmqax2mnki8+5af/7wfnj7wa14kxazqanc74otvgbwdbeuh9cju8yppufcsg9bxubtwn0a8q9otcnhculx1oxslgljx601vkrfcexqgrn8aavkiyvfgmvuzi/dalqcuumiy/hkrgc7jxueacmrwslaskvfclwuepxeosbcclhxoqzzju2clh6pemm0aejuepqhj5hahalgstfifehqhh62equ8yfwi8flza/x5ie4+7eshe+z7awqosf7a3oi89hri3cdh8e8hmns2wgyxgdrdfhovhuiczgnme4h9iosnt005mwvqlkykvwwkp6j0teprgexdq6ebhamdqdiks5rqz2njzvsbqp7ljrp0loft8wcxleanf23iely7qna/iuluvvu55tdm9rs86zrgmt6deynvquac0rnshdi8kkuxthlg+4zq2slyzev2dgvmjwa7x1qjxkkydawhw6swuu/cyudkzz+2y09t7azyxztg7raoddng4xtbitou+xqaxsjmxkekzlqysbapdqytcshsbbmm+qszhewthgppwgcqi2g70ceqr5k7ynrogjicggnsrewghpmvo3fw2+0/nhfppz7da91qaaw7xapjrpatrouv9ql5ysdu3w7udsd/aro1juk00smuho1shoxikv2scricazspmei5nk5rdov9gjt7ljhe0tltshsysxdzeghthwtrqkceaohqx0inafy9utb8idmruv97f0hgy8e+c3yxcckvsg8bznbv/dcjtixt7kxz5ioynozqxis411g4bezydu/prtmqjcorkhvicok4i3uuorgyri4gpnafuikbfalre4gjybojucquuuoasb5ndtxljdkx/xivw52uln40lmd1cktakdiniz6cirfsazw52tvaapkvadqapewqjqa6brkozhgvzl81nawmxrxmgom01znfmg9slmmydk04gioaey8fpa1dgp4xpg9geo5h79qd5rfskanqrcl2ckwdaymuqmspssa+llnipwhh1wdn2jysgttl5e9+5oyekc81b26b5kxxsja/6wbdy3fulilmolzraszr02aevslakvmbvsoaecqygj3sxobahlidfcnasb2gwtu2ociarka7unkk2j69f/reo2t5cls4pa9xtlhozzslghpris+77tjdapivhsnwotem7kgsdmvqbpkmvfntefpxeiyglqezgbbu9draqdqqlxkym4dhgjigz6thg9mqqtlw2mqiqkh/pvdcrziwryc+weqyj9vi8vsnypukijjgrbh1jz4udmnqczk6kvoung/oqpjiyn3ltdwzsz9pipldnfbdwfuuckwkd6cbgie6d1l+kkea8zbdec49sc8d7glmr7jvc1jgdsoezbxtljwj5hgcf/s3tp9ppigupchttriayt84hgrlgo/qlbrax7yvijea/mtrkf0slzyut12jpkrg991gnvaorcdkrgol0dm8mwrc5rbiw2gwjmm3e0eaxspyfkw22nlpnh/9ihpvlq513ibxilz7isqeiz9o3m8e8t5bxqo2c+irutsn0qozrg8udnumc3b6gshz5k6iwejemnpao3uuylsrmpboghehvaamjgj2udbsgj2rxpo3s8bfnhwmmvw6hdhf5xnt4xta8tm7nvklncudzyaerpiyz4ivrbnzdmk7txnbi3ufe+fhbgsdyh8yxkw87gzamjes/wvkoqnmbjrdvzddz0iaxxnhfguef9xz2j+/7dkml7du6iegvop2cvc5a768wvgbwdnt7uulxhgij56ruhki53dwjokakouh2uxq7hz1iv9ohyzwolkv5s1a9elejmj5guwrwgrrztauqbgfolqqrq8h1g1hsibidky9ux68a1dwtwdwzixylgh0xuuuemmwlafonplosk37g46ut5al9m+jcqn5m4/zneafvtf2ormduopcisgnip8hokiiyefkuvgto5otrnh0qjksngs95dbgogqmhnyok8k4pignaffeiyu2ywhevbz/6w9zlmiqjwnlbgnfqmq22jpib0ypmggfu4zrb9xdjgzxlfv5ifvt7l5lizxykay5aulcs+d5iejkluboawnmqvcj/ndhohxacufbdapobtoovqtoqakmjpedzybtkpqudlojgsmbi/g1ifqrxcgxapxhwr12ssq4hdloxun9vuesryx9v2knjwge8luftw4fhj62ls0gkh/xuko5lc6hsccxwtkxyme5sgfkysquqztkoqams6ol4cnsegm4xm8qx4uvdikwesk2aijj2pcxlmatpcaywiyhhmv7jipuj+rwjblkjyzmb0z+oeh1rx64fkneyh1eugvae23dnuktm/membtkryzys0rpc/rpvirfpkroziwkbyqooqkkncyosbophlwoinhzxgjwacafkgis9d0msypkexizpmnc9unr+z3kvdhoxakrbh3rprxen4cpoqcxgqi5vbwqt7ub5f8eqvbkocpit4bhory645ggjnvfmlpoq85djmod61nfkuzyz2l8yhpeyyvpxajfnh41ohc0l07l+3uxo4gh8jpip3aglaerlwt8p9yhvcofxuk/sferocne/ylfxaiqt8d65hdxbw6logvpaohbpikrn/iubcz8sirliwyjpfayn02qtrciw610hlidfomzsbmsq17qjzhozijn8lyl+iuuabjnqzaf35q/xvuznpk5bintdijddojmjcpawkeye2lksnmqctoo0g0g//ouu8maguguffaxqyxrq+oyo501gajjrxaztke026dhfmuwvidptysoq5roa6upkqwddb5eio0xgk80fgfts5esey2jqk+ijqytr3q4phr9rdzyotun4khl5lfdmn2jsrhiv3khohyaevkta7nyrnn+0dtkrueu2lhn85stuez+umvybki6pewhs6uwaa66pc50ry08otlbiqskovnmxandj+t9iu3tpk+ftz7l8bgaxuvuwjg35gzza2ayf2ssanvaapifdc1nl8pcxa6funpynlaemkbqp9odlobjj9spl3sbdt8xdnfpzhn2bkrxgt/msbkrtgnl3kfyrlinfl8go4zhhqdu7qjypcj4cdev+s7nuxxfrgnytlopz9n/at5beuaimhmrj7s/ue7daqpvo9twj/stiksvomtxd8ssqp5btbwjxtrwrr4t5iijtti7aspwtldvkfrxehyvh3b8/pbpp//24smz2mtaiipm2wceelfpjyaqi6lsqyu3js0gkp8guwq9gbvlmag7y2nuchy5tpvylynircnhcdjhyzfm0pmnu1em4ruqvgf4iypeixadafheioqryk+lkfnall1fmsk1jm53bud7kjjlt6pc0/uscvgcgukicx1at7wknteb1k0zx9xidm2swkuwxesf9w/5ppkjlaivwvjofm1iiiulndgrnbrd6beoho1ozpi2ejqwdvskarfzkxobg2m+a+woaayq1l4qmsdhennf+ttimosknfmlfne1ymrnmtap02mdxq0g/whxrmvyhfclmowcys54mlhxourxocwuskj/jihzoi7j/gnd+npyl80eq7begjiy+o1fikio8lr71dqmcruevlqcgeewl30aho850irviixsawbb1vvqpfdeolzyurjyuk/ggnqoukcrwcewujoz9jmb3eynuyxkcasgh2iq4rptal+hwjij4gqxatqvnxjauejdlds6eahpcrytrwk69fjjh/ew6v3fj2u4do4keeimvuvq/qvhsclhwxta/ourznogzix5mxcwllwtnijxeatdefylb9skybd7kt4v6sxmf/fcgdabkorzey94otktykcsmbylw02w3gbxo7ch2xbtbecrydytpv7co115xkvx6f5ufk0jsxjb6cdx7kel6gqd8koc0qjydq4ovpvz+zpoazmqrgjpbcxwvgpv/gjn1l4parwhkfqkoylmzzzlqrd0ckeihjhm+xgstopxeltijpnxapehesa2nod8o8bkjuas1cenq6m/wpgz3l/ofbmqokqndomzhceatysfqas4ov7nhrqnxvykkpvycwzn4xomzztw+4wxi8yzrcv7osatifct6fg6cl9rkfc5nk2mdhh9prjvfom9m4sknwy4um7q5mi2xi1n0/4o+lpkgravjknfobcomxqdsq/jtjljlagkacyio1z/0iljpeommitcqu6jmj4n5o8xu6g8fwbf5ek0kyxzkqfteeqgkp9inci6i6acg9masunrn1aobcidwzduoe6fopwe8bmw8joirviajsbnejvafaiq95nb8gnwrzsw5wbvce2k9zoonk6f6xzofphfnbjkz2bqdddpwk59x6tb61jcfhg/62mitlppoaxendweqz2orrmmlqcmkhwc90ghmkshy92rkmummgrkeysnnaeaieygdjs0azxhj5zhyoxwb6rq/uk8dozx0drnza4mxyoktdghefvr2dygkh8twrlrzbeajbquh4u1mzqqzehle9rwbokjwhnobfguuwmaywyjngtq7su2jxbpjihxd+kp+fi/wdi+6heffr4p3j+mstrpytwy2vlv4lmjfn5vcl0phmmvspnarvklzgesngy589u+oruiu94mvwofuckdoxknjaszngmibfrskp84dtgx1g7qedieyedogjbjosivohhmpeoneqyfmx0ss8c8uvmnhhcehz7ul0ucmyfnbpd/effk7wtxrk0rz7wghgyl+4rkawta7wgprin2bhbptnr5p6fz2jwo6k7wgvfrncuezjuqeyqr221fhpksfrwj2rct9ug4ogduuqnzdnqeidfvwjo6jk5ekb14bzfgr2cwbiqyn1ll0agli3ymprrgwpu7xhgfidkk0cuzypjpbcilht3qicqpmwbue6esbtk3pg6ubtlhnktfhzwnyxjpjedfqkdxrlpvru1shoybqp5druwjxkpzjxo1otnoytaegumyabjswwneypui2b3gzngqpto7th0fcamw42k19lha0qpg0vai+44pz3vwxhjp4x/i1vrlw6+hnyjhplbh7snni5atzrl7s9iyrbf3jt5lqbelwk6qese9omzeo2a7vt9sy0bmbhkmkvxqklfv9ohsu2wbhjszno0iizkaaadpray3tj9ucnkmimbs1acgwemcdb62tqhkxx1bqmvupfkhpdtkotal1mksm3eh2r6lywx4ic6tzkmnwallmgomnls1zsy61i215nojltoxqogwoj42ylqepolk3fieslr4oy6o93adpm/enfaa1on2qjo+o8nefyp9esyptje5sytzrjrhxcqtabnmwlahsomuphdlgxtumkxcs2fdpqdqoj2dujqprzppiyf2fwenh5h8t/rbqeomwn/cojbmij+zs/hwhnwa8h8sxe4ph+ooh3wa91ndskun0bryrw3rajpdfsctwnweaxmm/gxkoe9cgmfnsifcl5ta7wxee1ltvxc8kguf1h9p/bfpx9oqvezas+f1qpeatbkl1/prawzzsjb2rnla0efkituomeqbtcck/yk63gs0k6qpahaienbozjfmm64d4yacromqwz1lyarzkjbjajdbuabq46frxh25m3tmwt6nmmw0bjw2uwmqfh0bog4a+y8jlc3ek3bqyyb9lmf03tbegpyekclyk9hic/uzxuijq5b7ljlhptlekvfjzdxix67vl36xjwdjgupm/gnt0ac59lgl5cprjzcr4hitvolrf6uoj6jjzljurtrrlypfvjjzjjbqq5trxdo9t6rgi1xoybi0gtgh40hpj8du5idhacpoy2nyjngw0rdbwtxtnacfpwmyae6mnf6aacoh/7sjq8wjzfyj+alb+betdsd/galigisx2bzmcsmojrug6fqhx/qeqp1zrhxiancgnf/m9rupq2td37skiesptqjj0nh+ssuznrt4mlqfdhplk4+/ixlza9tocqrysgr670fapydunkyzxnhaydin2othpkov8aruhucrfnkyxdqagemniu9lh6yjxhhwsw4jgvhcdtix5lq1wrxsharoatgxm/qjqbywkbybwenk0xefbkeurekcgtawwkrfoca2gnwa8h9ufrmvx7gccnsognk+rhq7skwxh7ilg0hrfy665j5qggmzei/hcncafk2bxz+tfwghj3xba3xfs2m0n9njzqjffaebczny5pui9fdkcd0teauewecdk+hfbpqsgxnzkqzzgbqxqvmzfzkbwgckndwnshoyjtanuu9ayjtv2ccj0qro0itibzslj01qeunqpsmqxw6ji/dbzj+y54hm7mbqrrgx9jndnii+aeq/vgrzlrwr5ta5cewcmeywbzhjt3o0ae8ks7ommgwmzzgaxjkxfg2zibqfyfzeodznngt4jlebfogpkv9io3+vr32j5ngznb4fhsbhqbofyyzaypjcku6soxbganzszidleuixrm5kwc7xqsfh3pe2ktxpjpbos6yopzbh8rjnobsqoz+5fdwn+krowfvgbjgrfkbpdhlirwccpwb/zklojz7mqvryr29ra8h/pbx5mpmysh1yhcubupl3tkdchxwgbe+zfakxpjcwteodmny6oz0h8zm0+b7rvhmootvpgzrxe1vv0pa75huvakbuwbhedzzcxfopi0j4d4gmyeuqfn9ekr6vkck66lpwwop00ghsdcrue4vsan1pegyti8pw7moiqxpedcglmmpw+b4qtrpov8qsolzp2je8hlsim82osbjt8lwz/8xz05qu6xucycujc2nibwd5d1udrcuj6bc87gcwq6wyhsjofagotziiej9bvsr1vlzzlsait+lwl851fpqxbbleaged9duvpcxsn/8p3rmxpqrecylkvheuqxc3nbyayh+syazj1qangadcgy7nlgiidtgwr0zikcuri0llb9kr4c5sa2rjrxa7gsx3jgbny8b51cengyk7gdogno0ntfsptmsktbaidfulcv+2hzobqp4joquie9w4dwfbe4y6yy3wmsygsqt4mt0jxtawn61ry71artbuyqrnnq3miynyqudf2u8rxtx3l2evrje90rtvonvwesffc6/hekieqpv396vu0lan8/oegpu6jk83azlbnom0knmefqkwd+xx4q0tzbhcndcedz3qmccwptummi1tu6txlklgqk1mi48zyo/5coizbj74uw1ra8i/wxsplmypg7e0wit9tbg0ffhp2x7gprp3sgkp2b5wwdrmu5kxgx1phwbixyx9cfd1rxhvsrkgdg/nyv9kwdxmq08ebe8n0/myomwq4o7c0khlklcqkpcmg6f0h1wmvkpxuzz15s+whniaz4jhsjlsawwlxqig2eyeix00ajabheudlsnkoyaamalicp5mu2q22dtxigsnkdvjzwpidsd/qwhsgdskfnefuinxt7mdadskq6m6e7jqdynpvwnkmzaad4ttqowa3xqonmt0jwb8ni3mwp2yalpwa9o7sbm1jhkz9b4kqvgf2gdpjsd7kkzvuc5f0os1rklcc1cb5mgles5fpbfthw87nq6zecl3yb4ptwos5xj1galogjejqkm+2cg8tuce72ae609o7thsjsbjmiyj5idea4paahidyh/icbi2whahqmosinmps/sahblomtzo0orarax+72gfoisobyaav+oekeiud4kh1sdxfqjpnnqcq0498jwxwyz3ryf31bxvdoavxksnem/rlqtmurmvwgjfilwaf3ynztpignmchrybiimwyrida4jppdba5sduzlgxgryg8msgkoknxhjrhpd28hksfd8ldqoymbwiep06ppvg2ry2gpwlazid0xapdnrdsgckyiyotdwzxt0shwdj4pw+g4ewrofwrj193mgwk+a43aukvxrn9pqpq/pj/pmaousvf9f4dnoxn/i0cu4itjkhcvlr1lumjsmufur8pdsfrbbvahvoggafba7wanqqp6kbygrwu4rvwalcapliol2p/nuymeqrkrwgjpmmyiep6vvk2pryg0d+dwdyfeq1p4+wjcmtjugwf9oa4xjgz9xgayqvscmhopwkrgl19qhwqseicj4atocjou8jlcntjsw15syqwvgvhvylzfjtiy3ceqf+irxz+g1njdhe7d0qw9+nb118bngj1kyapwjm13hrk2/lhyintiqye91nnknkcoblps5diebqqflu1kqjhevxwzmwtt9bdonp+jt/opjsqgxlsjea/itcxwkafiwjm927h0iumtglawkykal0abxbg2eccyamsl5heurfdiw83spqghjbjhimxa41prou6fkkeeuxzxvbrmznzdse3hzvescvvicnp7mdvx4x5ly87o1tgzrfeyrc4whrzhccmq95irphy2nygflkbobgik2oyaqicgyajmykofyiyfgjdfu+bvwhgbogxfj0mearehobog4a+ffaqi41wi0bbziouwqfdgkqflujhhghzdukqhlkab6ohwxgfqhccmmwoqclkg67rt52blhjpp7xylvfzrhogjn3p7+88tt+mt5+czx5x99r7oy1nwi+ncucwu1jt+heotbl1rbmzbbpa0vkzaj6yjrbjgxwplala6vb7koaoyllqd+byu7r02jd7pjh4vgknfone1sbqp6xzs9eek3uligmplnecmqkib1skkk3kom5axyo3ongu4/dym6+aikjurajrvzyqznxmgpsdsy8gj1ekdktfg18o8vxuqty6ux20mp1g+8z8yfnxpa1k9sspxzvxw4ioxvbm+/sapsmog1zishqs7mayjgcj5hgsjjgoo6cd6xgoby7hgg0aefogdcqhktsqffr0ararkaricukw8jbihn0ktaa3adyf6pc0+t34ubt6fer+am0klq0yei7ovk9y9qnd4slusoxn9pnqsbd9jgqi8wwaenw60o9a3xdi8pfxalm4ml0oqlvsv5+zs71b5y57gxpc1yt7l+8cyb5cuergn0izn40lazorpbyeuoiajqbp5qianehui2udjakrmnmiggsg4sbyhjlfgnzica6estqxj3rltaiuie5xafmydmma7vpqm4a+wck/idkc4rojeuna0ammcaxotbry8s+ixr3mivtzmnlrc0gganryssqb9jqlqpjerr5jrsdxgu3xrwkpwffnyedels+rolknqxwrdj+i8c49hx1xofk61sc64qxwks9ls0dsbkaqdduryroxn2slzwiyemuqspjorwu6ama0d0ajxoy0q1ubrif900ylcdnbi/napvlkezziwe6hsgnib0b5b8yfx6likcbywysagzwo9q90m21imagnlru9hzbsnyunumgfyxmjwehcqcrvtbxiqcldzclmo6n97klcnsrhgrnyawux2vk4q8yyk7dfmv+kvfc/+sxrwntk483omeayz0zujoavnzkquzmd7gsar6gfl3qbjcbiapgn9hxnkzdx1tvmqxw5kjsblgrxi+ftakkvd+tgb0bzpcg/s7voa5q2oqylav5dkcanjcc6tpkwdks2ioux0ibt5t2mdyxbvxt5xnec6k73qrd3qoo9wlrctjpupf3kjcuryg36h+pjozcy0ruhrrgnyiktmwjsbcl6bbxlkqrvuyd2ezmnxlesgrzhclafrsuwknkq1ysme6d2sqjdmupeno5lvl0xgfipljxscwfgyvsalmta2l2mgjmi20oplpvrycbbgg+9qyeyo9gz6xkpuqlwbfaxsr9q9ackd419sx4vuer0nalthuoyg7xkq+a5emp96wi4c997idaj6yn7f9j17lsp23beskhdgkcpuumjbcssc7fa+gwsjnkbi+d34yezyjkmoewle//jdntmjrabeiucr8boowm8jap29ygkh8jpgoy05cqdk+0iatltjavewakbmoa5p5w1xj4vmy1omfjnjxbg01t2dycfuhsdzzebrbfmf4ifxavyr8tcxwbcpkfihs0erw3vv7ch3ntb7bosuueu77obosnncyz8wvb53nuqg8dgi5lznegr2ko87ed5p32erfgpwqgmivnpgnaypabqp5lywdbfwhbj0j7rimzbyl1a9hur+syma6oiv6bodalb7brzldox50cuzcgte/51l8uhoho1hxqoelb2uhn7v9t6twkao00nt4x0ubc/af8ts5ne52re/ckpyuljredmignuhirywvq1rljwlggteiey0p3qbhzk81vh4ceunubpnrwbpb/fs2x1srn/2vdskeflaojjlgyszptqcaalayne2gh+wwayacrkwuoulgvrwxkvg9jphjp3djxvjom8wfqvxhbvdasx603xhciwe3l7wfldryuxahw03lnzedzmuf9chmqovlmuckyotp1xkcmjkr8xhzdbshti9nhdcplrjkxnrhhom/1xw0g/xqolptvb4zsvvjrfspaolk545ezejjktr29zqhjhbnlfynerrgmz3b+dijjrqky/bpj5o8f7tav7nxt9npoo7a/mj0mb9+nvbtyr95+orzolq+9nhfot+nubinotymjjifa95i3jcgsgyrtxcyyae5xcov1nwus8jkwk8blfggubvxidsb/jsyctbhxgfauvoxh6lhomxrberqqfkgrissovtclcffihwdbo8whcbemutdsai0vb5lypz02p3ft0plsu9abuleb8xrn8ykt4ipp8d3p9dvg5bfhh8g7ouprn/mmknm0wbnopi9mibc89fbu5dw42g2kspyxfyk1sronwj24ciqd6xijycj4k60znod8326kjcuyeghdyhi79xcqwniug81gg1tmg9l3ezh0iz8qhml6xpv5boedizvpqcl4kbwtlfqan470k6hi8qybptdn2++tn57pg11opx+ngb+sl/kr57p3jrsf1txltbl8rtnjgf57wb/svzg/nov2gkuhlpt8shygiy3dqfhf7lfpe+iowxa6p0cd8nflszeavjyir0efqiubrobff8x3b5pijmywzjjyggyuohkuprzjmo6k1whwrkpjgf2wonbjodvhitvptc4p8nu5ynubcf4ao8xnilmwuugb5iosz+m2b6m6pqbsunf3+cqueu8+5c+m6gcbec+o0qnald/n7dflk+insrpndkil3fyylg5r1yyh2n4h7hdhr7utdsajq12pctu5+vjuujdbzwfpzqdygsmgmhfmy6z8xjkzvtx+6jrtpasmgjhwbouimyeyckujgnb3kxcpg+zwqtign3giim4reavuje7u6szrhhaealah8o+ujjgvn4lutbesyjenj63zzpyldsak+gmvhwoxzrhy5adrrlkzvibhi2aajismouojmmaog5hcdxs5dbe3gix1hjcp8mlxmheiqnraqh57n6zbakmosjvlqvcspdkjxjtlwc3gdepuiqsl+inttqel1nuq4miq14/n5fvqpev3tlr17g/gpqpboyjpusirh5turcwtp6fxrn7uif5wosi7qyrfhibf4vaudbyxpmoyudv9/qtf37nyojr6eg+kmtuz0kasjynornor5ymm1yajf+ynw/sw6pipmaajg9dwa8h5t+vjinwslaxfhojjsfbepm0fk/odptn8akkqhbyaakns5dhh2btbm0j4iryt/r56jowvzsjyyzzt686p8cwk5lvj90kd4zkd66vo8lffmvtadjveymfcwxsbmw9njz0cipfrlbdnlr5hc16ltk4owzy2c32qnbiixfzdwfnoi1yrsjsmfg1bqj4wrikbljrtow1tankd5bwocn7rkca8gomnqmgtyciwlaikoncst5ldxklwgfvkxrr4qpn2xsgcqhyljalkwnrz/rjt/uricw/pp+pe2s0vsliht303mf3zkuhjdcivf8kxbukxa1+e1md7z9jouyow0aymbigwaosoupthdhwwhtqakysskgtgiugwgirk/aizxqgwoeqgkadymnxmkxsgbnrz4yxxik6dtxilkdtba6whjexm4dgcgjt0mtquqjclo92zzscui91jml0dkd4zmx7l2odkreqe1wm/0rj4ehxxzsfodpdmpajwkvoq7wrpxa5hxv5pkkwom2iefu91ho0jxsbgwhxoiko8ps/gajxkjg2egcyu86z5tgfklldo+fefdnebos5hhdeodxv1s/ojgaxiteamauq3g2+bdxsfvxkuqha40xfv5/pjhbixao6s06ull5h9hxibdditgy2ffewkcnytxv5bpoqz90rexma/bowvdfj5hcc/9ak08kdqcwmwwqxrfwkgoll9nee0tvtd0btty04sxlsn+wwawdbt8twq7hdd8fzxep1go4e2ajygjfkbf0yd5mpqqhfu0mxjpgvqnb/tunte9qj1jeo7dbgu5pd14adxazokp/6avjzex3xdj6tvp/oc94kj7sval/9zfuzurh8qhoszffmhvsvjrvpwnevhvtxezuzvbhzp3abya8go7+jbqpcbiecaysmbqzgkoshcl2gxmi61ez2uxk0vpnhvk2v90cyspvbhwvryokil6i/k9blus3dtg5bwzivx/rburgepguranlvaqeb1rtxncpfrbvude8c1ky+t5vb8atbb21radaa2y/4ioxvolpve/7wxx3yviallttn3a8gvr4vxokaoktvisimy9alqiserxgp01dq1gklnzzdejty8suve2slhouuv+hj6ttj51pxhpdizezaw4yaqpyota4rjiq+pjf5qtfopqh8upi9bfkdspzeenzsk5dxehig1mmqbeq9caiboxmejkwyd1axnttzzapjsmykqaloq77b+2qhyutcsd6+klqeml+o81o6cjxburths0gx0hnfqijyftsnoxlpwakpzdjupdprarrfwkohsjfamyo7kg6/1gppg7b0d6gvvqi6ukc5yp+8gx2sr62ogrmeemffs7tuoum7upu6mcbimg31qxt4duqyy41expc71x46eugdici5lczqbohkenntbapl+qfanolh22ntj2cticire1dynizhplssdqjiexfm6qqn7fjv5vibfo0vbkpl8hrn3j0dfpbknq7yc10b2bztwbbzowffugdulogkdhdltii+bl+6ot34jmb9yt7l8x56dmyomrcizuyaompuquc+wol04imxsubtv6lyb5bihbcbzmspfih+s7vmsx7ha9o5hhlh7pmimjlza88q4pacueizyzeyfddfgnqtykqfduqotbxdenlonkjc72nea9e763bdrjjcalpcypmtr4d0iu3du/mptdd12xz7glkxi9rpcvrcx89kr2dsef7k5xiijopml2++f8wzvg0diwpuiwqyt1yfhm4sibyd2ob/jc/afr+pk0b1m6drklbfq5xlhbgl3qz+wgqslpbshrzcuxfl52v1efrxwt5l7drolpb3z+vleswaoucnqvaamv8dxv0ad+ivrihm5pnpt21dwume/fi72eivrs3px0psp3irbfh1iwjqlroysolowpqzfsa0nijg7e2kfftatuvrazfhjlhpazjvtfdcyviwady4efukyvnwdwawh4a7v55rdidg4kph9svgvy8fz7xbyrqmsacdpax1bv1h3poe9uko3goyxoto883638oxeaiafihlxovlfiw4vpxyxd7omgvngcjo6q1ghigyd8bine7fwdxl36q67/gvdme8vdmkwym8acqcjpylyiqyltl/vfutlg86l2lh/pnbypqpyrbaunnsbcn8zsxn8gf340mbpya8rblzevt2/xcceaay8o51ezekun1x0k6i5hew5yszzyc18ryx7rmpmlnw8p2e+oxn2b1hegsdnf+rba6ua6kqhafesy47jdtk6dc2y5rsqe0fyorfjbt/bexdhkvkwyw8acwdhy4sky+n0fja8jagaoa1pb5+jkpyweyqgtouldqavunsumhptywha1uwhbtzbtgqqqfusixb+p3ezt66jplpr/bo1c4k7wttfsalv1r1x73snin2fxbz/5ho5u19ac7c7cpjzloytt3xqxycfogxzceqqbicj2jx5n2xpe2sng1sxewpisin95ndnhqwibla3tmbuthhwofkrq64j4/cdemzma7hykiwh7fk1dk/d6jr3wuhqbrdpz7rjt7ujl+lqqljfhbggpxg077zd+epasrmax3+avj7tsxmbx0fl5d9ynsy4saeqsk+z/xg7hzlgmlmiwbcncvvvn8rl6xdgiuyjrfa0rx9uglwnkqykugsgxmpmodcsqpdoiravi1tnucjebnizswhqx7tujqkjgyxgfrznygtyi8wyrnuv1e4acgemh6fnnuukpmu/x/0cb0wcvi1n/iwvc7xwqmds6z9zxfp8z8evoj8yqubvar9inihecomeifqqk2qri0m6oh/tzkmq1hkgs3bubpabqk4doej5vhjxroxr7sl+eohkikwr6uox5uicavzv6akypbgsoz7n9ruolbpnzkc0ao+hrnnrlrxxqi94r+nuqxhihsn4nzj5kmtz3f7w/ppb8f7q5ewlcb/6rkpbwtxubj41jzcs8va92s/setmac75nruknsjazsw0gn4aeil8wt/jjk5hztszht3mlvpepqnsxh9nuvamgj4kpu+cjebpmca2hvwwxmyrgbk3nt10l7ykj4ob4sk1irt7naqngjxuf76xd8lfs1eugxdsb/hbh506au6d+esgj5ok82pmksnushaxf2sioppqlcwz4yv3v7qrfhybhjiwksu/v/bpn6bjiixmlffv/zbgk22puwcnc8xqoo05syzwtk1limfnqc10jvpwiyqhskgkg2pxondsczp1vfwekyww+nppa+ombcg9w0nwswhmrvgrt+ovrxq1o6+8wzdyozmntempfsakep64awbmprmzbvofyt9tgvetjwkiq3tlrsaagjddjpawzscqqiklxcnjse5ff+kzsmpxc5trwpz1aeloqif88ddh7setcwsmmzmioffueohauymr0pkvdxsiywzpi+fjmhmcmacbf3gq19upf1hpcuwk/w6eiknvmwk91tve90dzpfhtp4pzxx2uecvluhxrrz3+rmnm9ib7y++wxd6kmispo0uwdpc7yg7abagtzooq0sn2trj3ejqn1zse5/lcb+g0g/0mhkhyeftb/64f8i5ico2witr40t8krvbexev1rdmmz4o+96gxjbstwu65gx8mswvp3zrsjemch1+nbfnknxobk+1m8twzymkrcd9r3sgp+zwd8y3nb9848pj46jf0ghomkz40urkuvpcncqyid3dfqv7xougmefgdyxrjeirfnzuaodeikwzuazwaqagrcgojxfiwkyqdkjs2vxgjhdhcv/nwzcswscr6svyy2znb5yxs7rteyhbr1qd461b0nnbuva9emwtd1h/jajokxc3r+3zprspaprz1qrnwyz/jz5xlau7qdwbdtv5eronjbecgufnkbotpj58feduqkmnxdya0gc0a+ciarx9qhl0j4a7dm4mygfkvai/gfvfkg0rjp71drrqj374i3xbvhvr3trm2xdzx/icfjwnpmq6k6x8mwlz7htrt8yoe+ep7glrrnlbdvghq5dtpol6ivcjmhjs5a18bipdkoylbnwyf1ybzk7liy9fka0g1tapkyek6ajaqozwtudqnzmvmmycrp/enyzcpi7ilhipfa0diuobjterkd5eaq3ii3llmvhp2l8z4hdb1pz/ceo8ed66rdx60xfukxl17ptabxd551eaed/6d5yiage8aueyxod8lglgwg6helmuraxahiu6dfbakxva1rfbksyiwco7w9rq0gr4ph6x4uzyopxuoykbmqzewzp3aohehyg0mx6jq71iv6qhazle0dvvrhrt2xqmwcnqdmvp6ia71svw74k6r/nzfhvw78o2uhd2xfd4/x3f95uibv94ejk9+fvo6jf6pjwxnzkt61vnyjnpbboz4tiyii0zvlhrjfcy2i2fsmuqhkbxasalgawwxisdpojdd5obccgkhcsxyhudgmew2bhroqyoxokwnuwvdpovhqk0nzp2slpu6o46zacl/080gkvlk7/mu0+tjleihseekj/i8aopugtian/ean/jgywzllju7ufspitp99xdehouoyjztgqchhkbykg/biyymamksx3chp0m2hjm3900sqfh4vlk++twm5sgysrrnofrvmjrl4zqgyyjopmecmtkuz2sywqskzydsyrb3ryqccjvvta5rxorvu3zh4kvlutcao/mdq6udhvdfzi5r4r7sfxglgw2nmt8ygtk5e7gujuun0svbwafe8nvoidyjpat15ab8kkswqpbo0ay4msy8xrqbmbexq8vi52xztabm73nsfhywllywoabsaz9fpljtq7f2zy5jdjbqnq6eehgcfwybfagkwakzug60waqqaljqmddmeo/jxnko3rid7l2qephet/dnt4r8yy7kyof4zptlr970ymfl8hgvwfkwk4/og+fl31mck3umbnknhwafijvneywcbz/i19lhri8fojg3mdqbiceypnxbcfely2tbta0haa5dryzww73zslseikxfr3dk1h4/zpcpnev9reddlsojiwmd2mnppsx61jmjrhavz0xktwta8ufc748b9ng3mfzlilvngi6rgizhdp7e9cffphdcdhk8/mbrxrvgg19nhanfwxqy5+6iw85y6he5funycajtu5on303x01lfkmofxgces6tshq0shzdemg7ptaank3xbwj6q7ribgd4yrxwddiltainyzmqfwalpugclea4yh1hnp9i6gbhyvgslmjz8yyc47wfexnuolncvra8w3qenpsodvfjefuvh6+76ht306m7j4chgglgvguzpwn5ngc0alyxk9eln3dq48uzw6gp46ygzqxnhqsfqsyjtn6c/mmzaa/i+yzl2byaxei4d+buvndi4mslecgzgslf26spoxjfbadlqibmzf4ac4fs3pvpv/ak5vv6zfrwdjg/7wx6kl6ko6eepw2phvv7fngrex5nouzubeba58qxziuvr8irxnh6l9+gi9yamg0upkeedslm0/1f+eqtgc0bmwe9bkrz9s4lgbjdbmvgqeqnfjtzukgfi0zzwrzmjwfgxnuj3hxmim5qgjavx+daajfvwttcnzxpwzrwvxwb5w1fxnls+rru9mgr0esbrjwdxt2pdokotgthanyxpl+6xxs7ykhv+yublbtebf2drqexeskjagcseckqzjuge9eeehzov2wq6/g20updmaojqfr06xzlzjya0g16lccoala+1v79fwsnbgkye1kalzt7e2wwiqpdkz2qfomzcwbjaaduryw7bolqerp34li1ruytykloakihl12x1xuqlnsheqvou7vf5kre48fd0zqlrduc+6bt4kilgs/vvxcjm0dnjpsindycrdxoaszzyn3e5et1qur+ogfugfg+hwgryci5jmglymzqaqsbsjscft5la71idgwdvwjsmjpo2djgthrbzulwddtqnxszv4rpzuifd8gclqcyobhvs8a6cxghqls+dywxqebho9ypic4nzec9gjvkxg4gvomk9ni8kyr3b3vfnpumvogccozf8my3mlhoq/nmq88af5ix5jh6uy0ecel12iwljx1gjesjwtxw5d7yoldplxs683giw1pdnzurmo0qrpu9gzctzj45shxpqpa+dcdqoapzdoupeuqw6gdai8spyro5jv7btuqjxtwuckw0+6lnrzel2ya7mfsn6vyt9rs1yjkolbkug8an4xwpfxxn0wf/naevspkvowgol8zblqxngaseskrdzyll6hsnyig4hw+hrga8gnimuytt+kgeglslv/3txaa8shoa5wjuez6kg4ctznwpdylvnhiyczsmwwrbylenlveca90qoyfy8ubd0zthwfxnaz4a+b4yob8e7zrlvwyvdmsw4p5vylcpdpfnzw1040f2cavqxbgk0ubi57hk2fkfvqvj8wqealns1nlih9usilg0d+bwliw4v9fkv7qtijscdsu4oewrfuqrdbizri7aelpknfthiwtc0f78cupnlcothl6pbxrwcxzwi/agjsdcuftzrlnrxo4lfjssvadfy6upakq32yex0kt3fvn17jx5thy71bxspfhiadkavki/ucamywbkj6xsudpzd03adyqgbaws+0znwve0gawuxzqumyvfmttmzndzaraj5tdictwle2lf7+ryopdyv5t6s0ihu6jffzghzzmar4byxo9gfne4g3azud1dfuptrprojuxq4hs5zczctcw9/kymvm+kjt/zwlxtoxasjjv4sec2smrcyjbvc711oaqkhieehtoneeqt7gpnkacg4+ynnw+oa5vn3fzxueh8v/2kqbfmhh22jbburidjhsqehyhusdx35mhmfptlzpovs0esxlpaeux6ubcqtu5dp65uwgxo1izyw2i5yha6b4exzvfla45fe2qgauo2qla5kiv/je95zxzj6hcotxzitgjbkmlgju2btazfe4mzui6/6nossbfgywac/fsxgxn4aeaorhvtopamxvtb6zc5fix0n/phgojgcv64uwzbgdygxnwfuux3cwa0pe+dxnb+tj/rlhtyndxo35pkd/em94zb12rldt+a7r7xkf5z0fwrxontd8epq1ydx/ivzjcrrh8yrgorypnjvxer/um71lkrnsaty3guqgkctgeglepc6wqqmsiouc9umviy0plfq6lfzfkvzimi0hfmulcvf1p0hrco/f9vvb58lbhlz3hxwnxexbplx31h5prr74so6lfvwha6lan/723x+avylha4b/h7/u2gd699mvkegu+dwz2+hyzlqjn7va1tk1dkvy5unyji1luafkischhzxir+nivcg+bscshxofquxhzmwmbg05nqtxy2ynjz1d6wd2ornvpivvqkuyz9kxhp1upmz/wd5/bshvholpr68cxa2gyj0wolwryd4lwv0a/nx0ervdhou2c3fvq0+sfo4cyvy+7lqgq9ctuvgdnlqibvynxtkadmil+anpdmabxy3f3gbyxuatldza8htyo2mgoa2oamcqu2yygghajr41g3kxrpjvvwc25wqfn6opaamfrr7lvkc7rbf+atr1azuu1etuiwjw2vnfaqrda527mjt3akge17zy6+4/7aqxpkpki1+i1m0ufoadcl2qhu4yiz25ad2wrjvdidfmhhohfqqkk3a4y5yynn9bg0dggl0lmkwsoy/fbhg+mduhreeqijxmiuxdmwiempueodcburdjpvwnslyoedp3cmner568v0hyjdzwsqsybpt3aowvwrxgpgy/9mrnktrp8/9hp7rbc673ft6/xn956enxafvpyffuc+bbnswjo0auxe4mz24cfv7aul0nxlekrdozvxiutrubjicinlophuyzhi2ygicbvxozydrkatwc9nhgdyoqvlfcyr+e5x+lu6fco7jsezmrq50yzvazmxfrdhfwlo+olrl+261zsf5lp7+wbs3l5bux9pud/skd5lpk/+hjozfbuvn9uxfqk5fhafzhxhrlck/pnwfjrn4+cp4pns0aamqefaxtvq1/aoccxhuwrg3ypkys7pbw/o9vjkcqq91prh0yndtwiygymjgearhagntemvbuaywhco2q528vphqv49rdncyb4hnloeuxcyf4rrvwr2urwukc64fojn/sa730xgs1kdnm0lod9mj3q8ag6qaohvgqlykozytg1air/ituwjas/pwsubvnnoa83elood5dk9dt7mq3qmvej8xuige4ahsnequcblnv1tor/aizko8asnaa5bd1tmrjthkq3eu/u1cx8lqatsrhvvyuus2e+fixc6mm6rda8o/a5dv9cpilj7+vpnhxxnc1xntnnn2jpt5nfnz78bdpeknqtbw8ieekraren3zbapk4f17opcjgesw7unaknjgmhdhl5elqbbqegnbmthsyb6kcxlwevmas9ymkplg/hns8pjgekoshz4vp7whd01t8zwgx/ki8piu0los1d81t/kgvlv8bxitpwfketteuiws6xj5irf9xaqmronyduw+fa44sgohefyeessszagxilo3mbf0trzbpyggiu0bkcd2yn53imh9juezzkskjb0zkpdqpmri+xuajqbjo9fzmuvafkazjzl8cx1mrp9jojc/0zcdtfx94v/t4q0fbaf2svagoxwpgu2qovfagemhojjdno9ttjyzfvtgcfoszok/ceh1rmfwn4wwfhsuqqtojn3e4qud1gfobe8hyd/pso4juswhkbpaago//9xfqq0gqorcwwdxc0m2rgpkumjwxhfwemq12wfjpw6txxblw3lyedttzruzbczp6wgxxmzyhyl1stsaa+1x5skejpq78fknz4dg5x7uh6asw92dozwszvbzzs3gkqlwto16tvs46hl2hujzelalkkrns1ez9oayyiudoaizie8am+yt4/sjpcpcj0ztr5wmdxg0gt5enqef6ctaunbfqoext1bfdfdernszq4jzblrrsqwd6qabfkujzjjgdhouw+fm4yfu83e7iimboykjppzy1yuh5vpqaol2snfarjq8xj5cv/stjrlhqsjtr62nf8fw+pfobuemtcpy1guf8xio/+vr9zl8l0gqhlsae6ajgwmeo0bhsj6bpcadib7gfjb0w24rpaaep3n/9u56pmw7kbpbn6/n5v8z6ouvp6ibxjiasamhicnxwrr0drphtbhbwc5i1a9e5822ts02vifgiahtxoosn/pesv/tc6nyrj2vpvxzraqcdr+jp8q2+67n460/+igxtrzz/blle9ldbdz+enj0cad/ni39c+ir0epazqkcdgommhdoioea6qjjgni9a6cfyrsmph0ckxns3y5lmtv7pi0ienv1avhottemeq5zbsoguxmybgymmhcoc+mxiqpjw9mti7cfmvgqqxexmbp6dc/y6hwc0ppz0mvg+kvx4uwn+sh3s7ynqfthxwxm1urtemh5ad5g8dwh5yfr95b955+23yhur340yoinchwkubzioki4cjg0ai4kccosmrkeeeqq0xquzqcm3h5f9gmtyuf6hdc83gpxhya+njdb0sssl6i2ncxkvki8satps6oogyeslmdvcnan716z3zifs1plzwdgcebe7ja8firfz1dvrh0td7k6lekmu7oxplwjtn1ju3vgaz6hm/znrehctjuddop3xvs1xbvx5azbugaie9onz/biupvjdjpq6n4bhltzqqqdjcvl3ri0gsyqoccibjkltpiq7b3izjkjzyrhf1j93bbm7fyphxs/qbabppi6masckvs51ifyspich6gofxnhrchu1cgbyvmphubovna7/ip1uuanwq9/tnxlfxjqvxkm96vbnwqs58bprzzersmk86v8l+cd+cfc2xtbv5129susboqibzr1eabbfluu6jni77xtcfihmde0iv+y06e8tjwwa+r/5dewalc4py6ifqbbmiukgs6glwlibvqrjpnxxfydzwfjr7joxvawilh5y1h/qzl7srvtwlbodn8z9in7kh3mkpjvgpbe3ob8uv8d+ulc+95uahq+lshdigvfoilixosclapzfylhvfxnh9ffytxk5vusgnrrusvi7till9zy+rxcbfp1qvb9somqm2kqokylo2gnps5yf54shg0juaamujq1m/v6cgabqmmggmizik+smyxhxhvgfxhn0glebxawqi2a7ll0nrwgjdduba8+q5aaqrpkku0zna750q8ju8qkxiz9d46ydlbqetp4fg3/pxs2tz+ce1l6rkv8kdfha/fq51btauiwcriztca4pg3aklikakjyntyr4ssn/eb0sb4o9ksuzabn3dr1evk1/4hrbhw4qv+gyk3bhxsgkbvsw+tl2gu9ofo6fye+6ezags6yaiysd7gzutwud5jlndgr6dgs0fgtynmjsgzytejw14ekrobfgxq+u+/5uyuequgkh6r4uxssruhnfw/tekyq7rwk4s/vohgp4rbuteif2m5dwouuodjzvdciq8umtnzcyxboeejnwgiymub/l/tzg3adynmii832lwimgsaeehka3npdcff40rqjggfvrqhisjjo2chsuqwxfqbyojyotkwt5o5o5hwx5wwquuizlvdje4e0i8tlg+mmv9ri3vyt8r7m96s/1uoyvca2qrdxocu/bmk25gv/vd4wgtc51xwx5bceootqoqg0cv03lj6l0wfvs8zypcb1xm39bdr0b5lwzolbmmwaq8koj7pjvtsh3gcgxcu8ggrqivbv+hqb4y8wpjlg0s1iunu5kn5ha8cgj80qbtchpdn6nvra2ommpzulqfbg1gjx6qbrrhpb8ud/eyydol6typzxco6lhbedeambezy+mxildifgeipxqb/oov5lrxbhaaw1yhletroliah2iyprbafadpb9kplkb4gaq144xlvtsz784gblzi6szbynzaryc5x2jitol387zjbnj4rny8tkn95fh5j6i7a5a1osbv+tozm6hxtda5m+wbbbuj0bevde5p9n9y5eqwhsulzfneb4rxkhbgyb5t8hfzhmhi6wd6va3yhwkcadl8hcbdkdcjw4ga9c7ajm8wowt1ahog1zthowbqn4+zo9+pmxtsilr3ymqbl02k51brmkhhcjbfbt+muxtvaraz12bmtbofsa9o4q5lxp2l77zxbkpmrt2jbpdyua8gosr7jtlwphqlru2gv3aryvnlnpz1bci9lvfw33fyuv1r5v5x0mbwwneawazcmer0fhaaebna8w6fk4axepqr4bu0233i7ifq/fnwxta3lrela8siytjr5titac85phnpiln1elu0zqgoskooabs89xk6lr76vulgkjhqfjxapexvllnuchr4emxclhflr27amtfk4hsq0pit/8q74oeh4rsv0c0rp/qjwn6omtimb1r9cfw2fedd5cooo7i/sxk/bs81h5z2+yfgkum9ymix21tahnhmp5tnteso6imgkawfs8wcbx2ufdgyqktn28cfizdyacwlobxlki7h3r80qjjuhdnsp2t1yhx5yebugaxf4k+ab/krhifw/046ohbjrg+9rn17+dgzzh8ol/3f3fluagiakaorocashmmqbmdtxbmzfq+dtqdm6ifpke/gnrcqox+qukhg0d+x0uxgxiynbaaemzk4o/hbc+qpnxhgp3mo5v65oxa2alvwcqpi+zobdy0cv2kk+r+18hxztrx5xr6ptos00yoznnzjy94bcxhxs0u96by10slec+6podeqjfmfqfd/whwppluvuuqsthp7bgdju2ah1rq3fjobw2bkl4fcndoqhvz5/oqxg4/udqsrr1ya8mnig9m2p/ybcul9xglkltfd8z8no0qwkrzwgtnmiamy4syuxhq7vkzktyx63gpyjyihgkc54mtc/wwk/xby+bymiqfrjfrosr5/lwl1sytdvp8vikfgkqw/7opnm+e9nquu3cofk+nic0fg091wk/l8irb/lpq/yvt8wugnapkwsjx1npidkhva40hthe1ygqkrgpcpwf8tqanynx3a7ifjc/96oo2noc8dpavi+gcjgc/drbdrvr0ibrnwe5xjikdnuowuciwtrhzwk88prjobijuh3ee4ilqvjuw7ve86ugsf0ds9qdfl10auqaixjrquyde9uhna/7ak3omp0zxzysfjjf0ho3dq6t5lzj+skp96ttybnlumz1fswxdxq9wfzbmzoccbovyt02tu2gswdgcsq20nob85a38d/8ofe7g0yhsimdeneppbh0ilkxljwcgtfaki/0c+tpknzepouu1e8lzoqlxr3/befca9estwyc1zf1thl9rtid3bzsfvi6iyruaxbvauuxjpgphr0wijp+4eumashirajduta4xx1ilygicbr0a1qixgwe3+jmb7h+v85ottlkz29oa8q599t8/owzfadslwbnptywttmlptlpylkjvhyutdtlmtzedxm9wvcpajyqiqgqlruumq5hoss3vhjxoldlxjed/jok8zc7fo4qhfv46pmv12edoii/wkq/invgesscxqxjm1rtpzkmbpoqmrei21h472bkm6vhpg5u6wh7xvowwqlnxboumud801l+tdsabqe+azodr7p8oz8aushib1aede5u2qxailkdimw1hfo/rgvadngtuwqajufj7vdcauzd0rxptxjmr3a8ccsuzj6dnfy3437r776h52dt5in32uxfqpzfqkxh/q6xms4ybzkxxdxukvtafc9afihq7xoewenmoxqmo29ru96roe11s6agqhswjfnd5jjgyts2qbwaz+8fymwlcufbxufzwjwwxiwk0pdqdhgqnfbooaeiqu5ugvk8a1e42xy7ftgltzq1wxqffh87+oteluju2l+p7p1zhy2wc/ulu90whc30xijw7d+gkb/sxghdntueyr3plu/qqulaje6fbnb8zosmgh4dwlefr4hqrhzqes5+opjsep5w6intzrnrsvz9wrm9r5aaq8/rwagqengpxqkkqjcay2lqiormgkzerck2vifalhsfauxvgcqybnuxxe3yvesmdph2kpk2/1wwwhq/dk71+ofbz5wiq7gys3yvmoolbr8mn3uidr4hdwtr5+r7iy+ah1/72xuo/v0ztvssxytvgc+evcwdwgeo1ixzcg8y/ixwuiizbomp9wwqtnw08vycsjqw3ihruopc105zebwb5ar1yjxyks1dlmulwjlbact2smgwt2dofk113nyupuzfwzmlbqbi89plu1o3h6f4cqpcoyek36+mgf0hukqxcrwdjtzok78k3i0d9r5pprx3+z6rjaydbvs/eqapfx1/pdfdag1tnueqk3cjbhdq2efwnhceqkddml2znhicocq/8rg0mn4b88pjypwizq+h9osgmzggg8bnaybfticqnkfcxu5hbswjlzd70kaqbnjwk8r6o6bqwa4skyzvjab2drtvbgxth8auk4swiuwsachkbr2pifgkaewwkp4++2u6kp+biu3oy4fid55pa+mn3qfkdks8b0jhaudab1afznxa+br3n7nr1kvrv2rwghaa1snyfuek9/oxrp/5u1vcgxakyzswlo6uarzpcadqbwp1laroftnjdkoztav2qjk0j621g1sqreg6itbohc1e72fcz87mbxpvo9uswvd8xdal7s6c3dbqw7pazcf95dt4z6z3dd4xqegybcakoa899z+zjltscpirz52iug40rc+y8rzu2jfehimmejsxdbyh418brxdpvjofiowxbbw0r5gj/noeqabpbvqmnkhiaf3ufvgz6tghahrkik0ebsod14hq2d7bpihdeakddtotungiemty50f2+wm/kwjsjs7opt8plr3yyekuksspswfo/swjyxxptvtuuhevy1vw3pbcq6cpct6mly58i+uanpa84ptp24upuh4deib1deopwjuknqfyid6hej18hcmxra8ioalgzn0hiykrh0xwoiydbmjhsefyjdkmyysghzquqdxnnhaunlx6kl6hzua2ci6jt/hzdth29kake3e/35gcpndv78z5h6oqrh8zvcsyj7umjij28hwaq2/jzk4mh7minhn8avtdqa94hvef8a/qzrumnqmcnn7h+sqip+qnphe5v3e8/rxwqydorpwyr5aaqj9yismwqgvbujecvha0x1xguie3pkuxh8vtnwcpqxwpc0sohtw4vnnvzt6lz4mmatko5ojumfsutu0/2tgfwt+qnd65+hkgypxe1pb6vjpv1togov8c7oflkzvrjsuqvajokn5ac9goecl0hyoonkj/h76ia6hid9ez43dc62u+ijvch5b8wfbquu+xiw0+g0re11safeqojkhmq5iekxgbcoxvmdjazdtddpaou+3ofbnvhvvxxohp5f64foaql5o5owfexwfg4lr4rls/9trps6ok6kk6uxqwv7dc78nidyiyv64svao09tcuqyq4gda9we94h/4auatp8a23mp4affd/jd8a+ah5a5feupgb/b/wt7tolevs2tgjy8euejnnoiluxhsj+ww2zsyji8ccu7jhozvtjp8g/jtojs42y1sa5t6dxzrrajxanvmh+k4igs872pchtqym67qp96jyo87bqefnh77uddegxp9nipaokq5xqfp3ssn4hoetbti8jpb8n+ci6/atxacc7xaj++oiiengrypvwedflirxj+zukdxmom074bpb/bgdlpy491q61j8cmtafqroitticzibggd6hcug5nc9kkfmttdtust80rmv93aomautytopex0+cz6bpfohlnvxbt8pkawj4qzumebns7rf7ck7xfs1x1ykxydqx2yauazleix2up9sxvjv07kckrmkkagsh3zh+h9czxsaxl71fvfin7polsm2qt0fm7xffzdh9taoyn2h1zverdzwm2phsdyc+voyickr4zmbsowvjtejip+laohlunirs5x4gqz/fcgdinybtosnwyilp48k0wyarp2clbrmwaie3af20o8xtocuhw+qpsmq3yr3ajwou89bsnkrva8zyb/vak/qeehih/gonn8ga+6cdcpyf/l1rnmydp9q55que2cpk9dk1r1pko+bst7xa+kew6p9rznj3ttbtabjxib1emqbkqzem6kpgaf2+k4epmhzmgdynxhg0nzrutxoff7arpcxilnhgexioz9ffxlrltyuwfr3xneula7eqmkv/w6466uho8o1z5mde/m429qwbug7ju1gn/5ex663ccgvwfmaad2ospqffhuv4amnqlwqmhiloq3fbdro8atr3d/um5vyvngp2xekkopilzbk1bvpi2gnwiyk+tleci8whwhczk5ndtcgunsvi8miwyxb5iskwyngnr5sqgosspe+m4ff3awmrml0xl1hof511qnd7wr6onnui/0jtb/dtdpybgwhckzf6a+15k7r+ppfkstnssm43vgn8e6kmvkb61mqtrq7w+qdl60ylkovizjwq58ghhnh0/gtnl2y2ptgex4hod7k1rs0wqd67jetge3nxlkkkk46tuuwrvj436e+fvlzao5u0z5badtwnojhkcpkdrzuno5vh4dp8blq7dxp9jjbo7bcdyee7ofuslyhdl8fxnrxpdpzt+ihnhrz7erfexu9e3gdq8id65etgtxxihvrx0gfgjcz5vjj8/44j3bjjw1ponlpor1btyziapn98ph++/pu88pfhxsn3atjaafhj5joggimdtdskzqtlotyqgcyqemkpxl/lcljjue4xso02hzqtqusodjbzocqqos2i0nhzz/pyx/tqs8c50qa9r8dyux4kqv3thp8or5gbs33p9vcstmkk7viz6ecm7axqqg+jczdrkb0lmoqj2rt3fjy8ajfeo9w8of+yxrfv9smqrbic5aesvlgrmglwbfbqicxkvesbhydandpw5vpvkjh8ewcrd7d7how/cp6qetsjljjqhonrams0jqesk3pemy/clahrjgkf64d12g8r1tva15763axzpmbtu+r3vgbstmk6rryv1pmwer/gom5lvad5ivon8h/guw7uopnokwqbpflj9z4sdrrw6jfjudcgnib88/gikktjtja5ttqhqyi+n6sb7qdegtkvqyc/c3whnnrhrvsc5ej2urn+4ehl2f5s40e3lg+k2n0bmoszoe2bqg3yjv+9zp9cocbtbdpng3kleos4dvskalrul/dkanxuapabznnfuhsdhu0okizzfaxwszmxb2vkuyo49ryfeswfcjt7xww5ra8jvlriwgpji6mwuoxaybnjo9qzs9tzztlrdmhueo7ng7mkn8miydhkoxaohxuxac0xi5o6pagirhc3zlpwsm+zlafalfp0atfhe/pfgbrfnou8e49xovcgqox+l5hjgoa9zl3s6zkkirzis3gqn+h3ymgbkp+x5j6b8a+4/m/yd7i4jmamukacdszdr5drzsade8c8jfvgmy1u/sv7jm2lionru8wza8wwsljly16l1kabdceyiniyzc1scblsgvnriqb0y51ltaf/h+j5zittojc5x/oiws84juq+c3yugusd2wlvsbbsrtxtdcf4r34yebjvobj6fvmdxdfkycqxw/anxdyiejgog/otjb+q/4rpmsqn3h5b+rnrznsfw5gnhnm3tmufgmzlmqh7spmta369da9rsilkb5emlsakfybsgiewdvuj9os1uclffuiyd4pwlw7bm3fvg0ll2ilcdt5tr40oqiauryuum+3kt7rsxc0jf1l0k45dr6e5nxtvw1pva5dnn9wggecfj7vxcpt+us9r8e0k9/idwbsdpad8a/kwd6xjluwxz/jactde3c4qqhf+e4s27dlac0vtyejpgckxp2kqkw4r9j69cgjjqhrartzyixreqngj71jocpbz3wgnsluexahllnnwj761d3lx7uqpk14pnjad8cubkxwxo+pgb1ree+uxl8/bzaevktbzvvgqlp+d6hfaf8adeanw/5yjr30u6hr3sov5tfwxcp8t85cfcp+d6nay7tsriatk7x0nfjcvlg2ejsmjfw8zfwclaapi/9nirzkxxkt0dhnx4u9qqa2exbsijjs/wc6hmmtmszfp8ifo5ylv5vyv4lq+ne9eoet6bcuq0aqn0g3ndjaedvi5tc0tng7g843lhpeilb1xrnxj0hhit8taf8alrqeb6zjbdomclaert39fnemtoeuemg9f7qphq3d5ue0qnknix/cdjk/crpa5yxbobqcyd3we1+pj2rxy6vdcd2dygkgd7oegyrmwj5fxhjnpeir/jyroadi1mvkkpim87d+r94hgwld0h338m6dc3vmdck1ylaymqnusaxmqb654r9wpidaa/tv040zm7o0y+ae62eaberozshwbqtrgfudmenufxrkgtuv+ha84nmk6txsjhfy/36+qo+sfcf8l9ddjpab8yxsc4ca5awbswzqcn0skeepdntjz7c7fyns8ph1suuqhk/ykonbkbtnxgmkzrymz5gjeodaobybbqqgk4tohyestxbzv95tranig8ca3oen6fucck/nrnoncresmn/qxzzppbspyhmendtflarcy74d+hqrid2ph5gwrqlyvq/gnjx+hntysnven8g6u30giksmikgyozx9j7gyyoomkmjhl0st07e1+0gqvopvstk70b5mozl1zwrhdeh1jmcyigtkt3rner61jlhzpd65zlyoseuwqij4b5gvxuq49l1248j5casmulahwgqvyliuqvpt1qfpmf5z2nzovjrib+bqfeg0epvfueb8iuqok25bp/tblhkfta5r/w/khp+chpn2jrdssbmumyjwrbyfe2lfjssvcuzt/3rjncapipcri8zsblriszqniqkm2gszbky2dybbfzwjnszrrbh/agdbkle842dbecv8hzhjxxvt54bvbykijvpec7y77puetshtrdv/h5n08fzmg/y4b3sz/xield7noncragejd7fad4g4f2o9zf4tlmh7mh2hp+b3xsx7dyrniewa2nlyuyr7vqr4w9nveoartybqb55zoqzngilzmpevcz5t56yjuvlfhqs5xeisgwemecsmho5ncj5tycit6w8ndfovwe6phuh+vujxldzzsvgeglf3upk0b3fjh1joqhxxpddzb/tlxme+r1tquq30rnmcrt5twldvwdskd/yovtymw//odrp2yr3jmntfz0ib37ud9ereu06uemjgrgfsbttscxzphqoblezgo7aerjayldzcyn5hbajrbezlslzvf5gfzdbfsus5xfefsy+rnen+i6w+kgd47cxkgr8pf4zlhgux0d+bar4wx9x1vrrhtx61k3btpv6hmtlzb6afpr0w0hyff/7njnqr8s9uyvibhd30x8vm8bhb6r4syo+whxz6k3vjunwsawwyfig8xcz8xugvigfiyy60fns6cash+sdlvpkif9x0m8weja1gaqagwwykcnzblpydtzadvmmmcopqckgwag6304hretc4anm4cjlpcbpgkscwakvyker42jlo2+xfljuwigdvp35p3szmusrn1zatadkeqcqe/beahu2+4jrqhc6ejn9aa1lskmnuz15igrkhzptunb9q7xadlhng4rdb7dswpezh2hz6g96goua13zfflpvykbgiu6gkqegygswqgzviihrxd+jhjowxs5aesd6297izkwjgcyhzhdlcmxizeak8yxnzlehtel+dkiesxqll93qbaxuxl1algaxzwdwqs867mo8gwesnb8bjjgk3oihyjoatpmmqhejezugvratxdyqn4tnv56mhtfizk/or0h/4tre9bb0kguzxiv1p8fkh9i+ldw7eqo/4gazjmblgk5xg/k/ib4z4si8ygq1affckomy4xjd64ojcxwqihdh6kqe8vwbft/1/w/as42wneuuz5ymeudklsj/hxps1cpthafaohascnlvmbzyoevsfh7cmstcs9qbdhw7kssgzvrudtdwprrn/wa7sfneutdkhudsviqcrnmgnqogr/vrrmcvvsikn6/v0zmqin7ua0jlf4jb9tb+rjqpt8bfgdkogbcqetwmre3rk2dcdq8ef4ph1myji99nzuj1xzb3rnsnfbcyw9y8jnuoemdqqozryfocflqi5ytplfr2sdbujs8k0je4hzfm9reai1df4xvnfhds4/lvucix/uj7xxhvzkmx/wshrfomm8yuwpaqdf+cbekdhximvvyqlck4oonjiqaw71oyvzh/d2nh27ircvcxniunrh63y2+m9062dabad/qwamcbin2bpd3lc+qblekyiukxktfkt4rmnmmqd+w5s0mhhmtnk2gpy5m+3np19klwt7y570isdcgynkb1g4bh3gvoaf/5kem0/jkb/lvpoupsf7eivngy8qa6ivw3+dzymaqeytuus44+kfrxhurqsnooty+t4odfmasr61rdjhbuc4phwn0uptchkeb5xadyc+uraxplogiz23ovtlwg+vhpzpudfxqtbldav+0sfndfq60lh5kcxgbrhczecivpzxuo/ggb/q9uedvx+m6opa9jj+rtkdzcoo0uppjioxee4oc3ogarnnpolepai/daxmdazy3zy/aosclhum/4fldefp5hpwwtyca6wklrfqnx0edpnknafkph4bqhktos8oh+vnjmxjibptdrqz5t4onaaphr4c0t0mlrtnpklg6l/v+4ic/t7zhj/lhmvkagnbi/cv60ppm5eq0watg+0chfhcrcnw8/b33j63rygsn1ri8w+ksqts8zkrsa5qqmp4eumrt53lhsd/ue10dp+g58kz1a/i3ud8s4f34mvlwe7jjv0tsfey5uwpwweezngrcepqjkslkixazbzpdhws+h+dsrerygdinx/wgjhta3pvtcta45c4t0uwkbn0k3ymgvmw6aspeabaell9qkj4u0tuvbe/v0ixcj4guruq/8drujhox4mj1th9vujfxhtmuojauk6itp9w808/pgpxo/9hadwpnr+n39rtq5mv0e9cpejmywbkjukjoteihdukduh6ojjwadp8hfhsuoza/nnurze85njsmzkr4jslbl/40p+c8u3vc2dlslcw+cuwhqzbprv6i1bkrzkwvahg5snbkej2wqfj0nmvl9behdlb0fxctr6c8opdwh1u8et+hi17nf6uftssukrf9qndde7af/4fsntkulsu/f7hbugt8gprdrd9rgbvr81yecd+lytg6cc3ur2hkvoernx8vyyaandl8mp3cvkvhgefulj6fjhv1leocua5j3qjsdnloovzojne75bzfbhhkrxusvvyscmeisxeaixn2lxlpdgitey1spardhg6dszzyulzj3gpb/ap0db8lkw9h0lce8nvxkl7wx5xukw+96fuf1zpp9cmsaf/znlkcf53g/lfa7im8yypxfqratp1txceaz9kk+zzdckvjlj4bfhq/mg+rh0opo0kjxyysmyirpq6767ot3joncjgcnggrg+w9cvevojtrwdkqbapig/vzvmttcpbmi6kwxufpempgeo1el6fwwin2tzurtgqgho+j+inmcql9kfullgeoa4iud9c7vxkor26+y7bggc/lcqjii+wirpqdyoscilbtdrru7c6oar7v7upfbms/vouqds7ss0onvmv1k8qhyanlnqgi/b0dz658fyp86qu6efxvozzavcvvij30waucpoq0zagq/ih1uni29+d8vuhbpxjlsa8daglggpdkytmvsxdlsbwkweve1+tfheivjinmwomixabijkhgbbiup5axmgatnb7kb75jrrdld4kvap2kx/aftj9r9cczzwcxzdxuybudamfecrp1qv+j1+wzbfkrlyhb8peuw915wfsbxd/k/looyr3+apcn+bm3sd+zwcxajrzfdu9fe9mbneqe11sflb4zw8lurveoramcyh7rqztdmtjz6j++zskw5+ebeo4wqd4xfnlchnlpbp6dbghogdkkcoav+kyoeoms95nm3wtqcowfxbncf1q6p+oxry50claciwc/rhq93lpr12vypzf7nojudbx5g/i/elryqrbffl4tgem0vprg7zsianxrargqzzg6bb4ie8wzseaosu3ag4u3gn58saop7vqyntwpzvnawrldr4ctlzn0y4o7tnzudyqfukwqyqoyxvnjdli4hfkonirrqk9h3tbwiyc/djdejhjdhawpt8hyza+ac8ul1hsclofciwa4xfxrrywyldug3m9pwixjpqbscdua4bsi7klrydvd2lqvm19jvy8yay7wynec0ufb8cuzerfkzzqhhcps4zty2cgerqpei5jsw95vcp8os40/y0zkt7ix2qt/lmkilz5/wvataz4bzco8eswvkjwk0hsdbpjcqfmqvde8w9lhnjztf8prsafmhti713+89iltjzotgrwokg3p9axkttmjkvndfrkythainjcj0+qqwycwdigudy+ifg7bfqpabsgx6fac2n47ghlv1cfdi4o3tv9czvhl6fep4dhxm1ex3tvfj4oh8jpgr3f6dtvyjfnhn5vfi/bns0qifpph+92l1bnwg8bpgd5ihqvtsjtnst/mqb4jjsjlx+fefm9dyi8n2kqr1r7/3m2it5+xdgchuuhdpbd6s7p1lr1sw/+uankfehll2u3mddm6rzeqstocgsyxlanlmcguiu0gs6rm9wxahinlprfjs5bne7kgietw8lh+0h11g5bojpjwrp/vy4w38e/+iix333tms3opfiem4kokxaucy5xim3fu52gnlv1w8bfwleqbvchwrughkr1dfigsk5ckkzsughqynexjrh26mm5f1dmck5rdf5jmrg1jybkwdxovwb0nkfe1axxjphas3gbhn4c8ttwzov0v1zfnukzkyiniqip0oihtzug5djnqra3pnsgkqc5v65brl3sv26kmksgtshcnx+vo0hibbcvpaxysohe2yh+axhd3uxqvxgetgj3yezc7j3q84fixqux1/lxtmu382yruz6otny0ifh4knsbfb7bvvkzxbvinxdtyflpiu5nhy9d6cumojrqrscwv9meeyvhv7kekohomudxcm5qp65xymgfk4fbxbnlqtogxdb73g9rqm3fy3mbxa8ilmwme6dxumzmmzwtcmpytgrntngbkgsfcj4dtre6et6bnmguik8gj3scwtqamsznabpeiqdrxlehaxej6hwjtcpngrxz4aqjx1hr0x4ejhq09nukylihdj2k4v84fa42gdj1d+kwd5qkwmxtnodgffomtafxpe770s5bvscc9zm6yjrxmshx+2pxblchvqlyashnhhgg76ezfk00kykbm867suw5rtlzkie9poczjqfejhdbxxgcjhg4a+diajgd0jn0oq/yjciyzwcmne8mj5bfaaklziiqbwgrognycpwxqanmmtbthiecqa6qxhssd5aoeatbc/ekbawxg1uwtqu5gl6rr54+v9dg4xnbgxelzjzriqngelhxexg4hr0amy+cn/2pvcbkmwlnved6kkvibodamm/os8r4ca48uo1lwn8rfnnibmg6qo8y6z25w766zqhvvsfaotwnw0ccpe8ohz1m19ba9rty3ug5dqbiw1fjimudomfathlurjf8vdg/rnw4gzrz0pgmfj590ybnhjhtt4tgshuconbwhdbcpki0ajqcoai+ahyabqb4ajiagya8sr9koaa4qbpahawodxms776p7bxmrvgbw9whkeascb9ex7wtxu/jr3ik8ffpzla6rvntnoou/oycmlbuqarc/cpmm6o3bjvkp9+bdqz9p/jl3fpdkx+e9o0rnuj2orcqsotmhwvua7qmaecpk+hxkj5tdyol0sjk8e8/farqcicwgoq2ugyelmgx1ezgmb2sdyaurdbol0j45zddxes8h5mnaymndbjm7sjywgdraggsydpagkanaigag9alxgheaeicqqazl80rxwe8xwmblc5cltoi0qp4nrgcpgoicz/raspvddulewnabfyfog9k7qmxnr5ldldviveuuqr9t3reogwmlwvtctvzt9shxu4o9fb7sj8pxqdrajvbuy9wvj2jqoracczafvlpsqpeis3fpzhidcthvg3rkiseay7gcrn2zcllkoyaru9cwzv9padh/+dewe1k9jilttpbeo2m65hw8ep6o7jokoka6ajokfor0umjxhyos5it+d7bep8tvmk8hsb5xky68ewndxvy96xx6h2hxevnw9hav9rwc7zei++qs41xkty7gwfxa30ok+napfhf2tbg/rrykyaxdd4jvin5ivtp4dvjdg30aonoajm6rglek406rsfqib2vetvyaq+fjftdekzqhdbngby6hktqdl40xpei5leod0mef9lahnmvza+og3flslyk8bjcpyekgpavkdj8o03t0kr91nbigh5x9agyhsiofi4qjpapimdjnprpfimqmr8ritzq59bgnqrgf4yd7eqtqf6pczrjal14tfscj64zzlzko6hvepkhqk6u0spativu5rv1jh2+d4/xokutq4jxoefprlz6b2ljb+wyieiny6o8vkfeb8ue5/hpgg4gfih7wrjempwg8h16fdvvf38tsfczcvduirrj2vqocngiuu6ljaiasx+hkd99ri0wli0rgkdkdoxmtyzypcqafeniy4ennhv6637wtvcxktihya8ivdfjxdgxn7t0snml2non8lms854e+jaggccincisgsgbarofaqcwi6ew+ptiixpddract0m2wqejay7jfywaxagssptlorb9u7529cs+8dlvlxukc3ljmtwuva8g9yd2apachhsc4bcqcyqytrjb31ijxujgxgzk50qcln3l9ldtbt6blcp8riz6ovmey0tpmtspjupqfy0dczt7ponybbhohm0hv0be4dkq6egq2kop0nywvzdezanj0soeja4pnjz7tixhu7mtolgqcrfvrpgj8ta4kgx0aezantkpg2gbwa8ghmzwgn3ayipubixjizpjup78refau3jo7zkcbgsv7zwi4bfjiacvakslhiczzgbej1bg1ssujicyr8agw3dvumvgfam9ke5oghyv81iel4h6h104uktkzkitl0ryywgtbqhyrtuyqy8flaetcw7gh+azwfealyccqewdddeugk1ei76k13tgqyetuf0d+u1fv/h0xx+h6e/qdrh9w/xhrzxeyrbkulxqlrmuwnen6d/btxeqa9obd2+sydgyzyhuwssspfj3qs8idluqhis90dbzgvklo2dyitvzyt3oni1dmgcaar0sitfci/jl3ka3wbyih2jrzg0cuptjf9pf6ljolpya0t6zjp3vugmsgmdd0acvodaioha0tfa7ptxaakqqneazsr8a+y30mwqcsaw0dtlhttfmzlgkt/a4jxfpc3vgj11shdb+qh1eigwuytp2fdjplovnzgq9czqawdtq8afymygfggaypomdjkscof2lhjvz6aplomirvue9zrpeo4vdymt/ltqn8z2nkvkt0sqtjpjblqij47wzjbkjgj4kfmlzjcfbkgr5eb5wetwabmrdfwq1ixvnr1k9wssqc6sht5mu0x4porerg6ur9aee5vfcfru0ifprdl51smymhueq55jcac9v6z4kgb1saujy5rsqochtoba5yhwafia2cdorgqeeab0bjrji4sbjoooa+qbzhpijicr0doammqzrrcaa4wneatucvahi6w57vvi4a65n2xtajrv3zraakcrhrblz1zyx0jmrepoimxjpaezbtrz0i6itdpbq+8bs5dnpx1u365fvw7g+z9n1lqmezuz0yjloyme9au+uzarka02vgj4g3givvo59i9gboe9pktltsqipogt6osj8hcpsyilnqf2ym6k3eshz+mkwtfuo5dlsafxdcdufmogfxqjms2pb7bkmmd5td2lnvkidq8nnb4pggkgsri1tzf8nafjvqkxdip6frjulokr1gnpz0nhoujknjsweyjokohb0hhicisir8ej6avuykixknmugnbwchs3bkortetfrj+jkh66+z8feb4gpsm6kbpgnffx/qxsnvwdfp7wn34cwisdjelopsu6zngsdpeo4kcsc1pch7ziiv39cbhioxtaxet9aakwm9wzrbo+rodvgjcezubs0pkouewzfqfmiwt2k3fi5vh4ln9kluwcvbhagii131gc9mqdz/f32jziha6olitentzaxspxbdcwzr525i96h5rlioutrzcepxabxkyyxtnnjyb9pz/g62tqhkcuaur1eyyosbsye2iot8nh3s5komhlonzciyg+j1ofyqtzjobmfnm0i6lo72satfe9i0i48gpjjgpbmubmtz3xcqfmwk1+unaysrvca7xa9an6hojcx7w65kqsmhtggvbti2sgsacqtojiv/d/szyvgujclkjfgr/+uftypbncdbne2avhd6yikanfoq39rmy40u222in8tp0s0uqfngfksfid60hw4ahchig+v/fkfaba6qfzofy8ekziihmc0q5oxrln1vy8gdtodzpjelv1xnixpx2c5d6clb2zujv6ucintqdocl5bbxufpvd3alhjeapn0tdqux05lwrzbvspwl1dzox3z0q8p5sjsolezajrpkorkicuewmh+dfghgk4q2fxas98fefn62mjxmzrr4i5u69cr5hvwpcv9lmlns6bcg9q4psbnrvs3fs69smdxb+6sqxrhqj6nsujh+orfhcq88ryrdystgjeu8bbzqmzyt551qff510p/cnnuxyhogwzfye40up0pahxxqcjbzcgufnys+6+ifcdmsnwymwh2v/j4dgc1neljs/zursosgbqwczg3anmqhiu3rtoghn8qhrna6xn1/7llqdlvto1l7qjnksbb5unqw7bi1ajaapet/xjib+orlaoxfzgmko3zyacpmadkqjqoag1quydfvdxebmvgnm4qyt1xyqecyqwqfmb5zt0f2rrpydtpj0efxpnmr3imk0zypyd/g+pd0affpapclm918vxeeot6n2hmysflmidw8u/vxw+vx3ctgojhqcxr3ooip8va8+ent1ahepeorow4gueurc+rya47ez8ke+yfasyr/ykhvmbx4ced2yegxykogbnjkc+/jvtrzgxkyi62t84lpstmsqkmt2vlfcwvlmgxh8ckwlmp60bi1as6jb0qxe1matbxmyihond82yuegkdexuoo/jmc9zewwswwkraer8zrntjq5dbmteyyx20roghjrywheltebjifcoqmocyymx7hio0xkhdupeadqyyhybjch/aj3zwajhoi6jnacip8soy7zbfgekegifh1s1zzis5cwhnfufusycgoxss0lx4u/1q+6d14ax6vkei7g+bouh6pzi637rj9fiojhacffw6o6ct2q8kvrahi5zfag4kndogrgzka0ovsejeabmdv6s5zhywck2ddqohgqejgq6yp1e1wg8o5ryzwi+jllcay+wkc5zeifcqfkzehzpy7pg+vwa8ghafjjmsgwp6mayh6y7vxggd5poh5rx2zqaba6llrilrzzqti6twxfn7hcfprwjnsyuktmwgyfai1l5baghbwnoumwrqiajx0a/ghwe/jp1rsy1iihl2xiialdl+5vlk0acqfagkm8wmyjyu2t48jwo43kvp0i3cnrfuj44xjaa70xhtirxnnvcp8x0wabx8xpqfgldl717xb+lzxksix8ceb3cd9g/imu3ny0i4uju1hvmqdz54jkdjxyetcstrbh3o8y8zhuz5hzljojynzuozfsyxhpdst0pvktpe4lfbplyscgt1vypm/kehpjgpl3lodrpxwoezskgx85c2pybxp55nk4aetkymvepr4cnva6h1srymxruufmpinrsooiv+hdutgycwm0yr3eyezi95exu89a4oiafsfn2u+lh9atxglgr4i+ric7+my/cbwp0swfxcy0nxlbpptyjr5m1r2dczg1/1mslgommggsabm+3/h4akaw1hhwktzpnqrgdxb9liket1repcheba/0ozvq4vi7gn9lal3qjfob8hcqp0f+ylcjogtbshei6tftlko8htsg6ss99viwdgbzsxhwxh8pbvmbxve03dyivbsuazeuyuesetajpwnp4qutermdka1sdg3m8r7yyobnew8tid2hhk4iag5ra8gilhbdurddsgbed7nm7mcjh9mroy+y8hgdhee8mjwonvrqxdrworymtnvfjjbk1kjoicwboqfthrrty8nucghwtn6h8nbaedpfwhnkvtyclvxvc+wnhrmv1zy07nr0q3p3oryaoxfujj43bogpcwfcgxi3xws71uajvnnndmwzjkabxtlb6k1j86pmqv5yck6jmnucppddgx6iodlwslesqvwhh3rbtrw0biog1ft2euww8amltmdqdumnh4kxmr6lfltlm7uqzwvzvxuo59eyutgdsjlea9r42iihg0d+ykp2bos1p8ptzoergpn96ee6t0l5gg8zvttd59pjdkzh4unjpsgsnhsan01ynsiatazmq8k8ut+pdlc/ah9xe3rfb1zvujg5b+rx+igp+efuh3uohvdbg3qthsplavmc6qvqrzlnnd28z7/vgrgdzdq2ejtyel62eae/avzwxsaqnfk1yxqfu+ei0hp1xbko2tnoajodohpxeoohxntgmftcuuci9qdsyaaxskqpfp07vknzlrefmzkmfwquqxwapkmcvt58bb64katbnwuvyufussgcnkx6cvkh7cjhypdvyp5y6ebyx1q72xf0xjbk4qaq50fl7vt4xe2rch7hzt6lhymuwbi+pknzm7jpngvqm0gcaxjh3jxblfpdoi8x6pozp3zelsikkjne/g5wapspal58qvqe+6grrzbtoaj6bpdzcbipaa6kn3o9mfo0zpd82uxdllk5mjjfqiidocqhg6nupl8ffnyo6lfw8tprzsgn9tnkal8rao0/oz71t0f1249gyhtmzmjjbm+afofxb8afspah/xbqknosn+pdezenhcfqi0oc0otbisqdbbr+c2tnucohgpubh0hxq/oqtymhkr7n7ssqpgorbvzoar2e5k725q+1dz87yierjrokwjv02brlitfk4qaqf49dcwhtfimw7uhrgu6zud7r/zozk6y0efbyicasnndaozrmozmkpapld1o5tx0uz+wxk4bjkzfphwvudju+55/4lkm+8wxnv6was310w+kuspeowwhyipbnsat/bzfufcgkjhuqdnaulja31bwsuu+ppdtz6e6uyhoavxz+j1qjfkgfngv6xkliowlelfvgvjcs4pgow6rkchhg3im4fwfaejkyr9simmynrlgd0ghplmps8gfaoh6j4djrdtffczewxoyra6m2mnjbadpymv7tlcqhmnjt9yf3lmo54vkafsjmozxczgonctgaekmcbgb5tvvt0guflp1v2vvzzs+mt59wkpau7i63ifqswkzhakszh8yqjijhbqomzdsiszoyxnxi7cduozanglx6y+vuqglbzdn+0qm+/ixmkd9jkbo/qhyulbjk2resgns4exjiyvpjnifavtrswthrtrbv6dlkzd7cpjlpn+ugaxf3koxziap/fkgj9yyiesd4e0mr3zulhbjvawj+efwjlt/lbycjeup8reqf8d69dxx7be7wzvbt/hp8laugivlxmwomywmmgcfjsbfr57qnhpqvwsmfyqf5ngps73k4vlmbo+id5ddkcfotz50ph1zmvkktzuogrps79avkyc2hnsrhbpbn3cwvuzqkhqdsu01cuciutz6nixk6ymiahyycpl08wd0sf5sgytwvhwvhaemry2w1ykhh5kvqywduybkqh/sa8knzlm4uux+dkx0flx+ztmgzdxsflcfas1ods5klngqgv2ukgvbuduir21bmysxhw6bvj+n1xhap77fzrtcyhyifyrukh/lowjxkx36h63dvemdxse7uecqvcazm4a3utyr+kg1htkvbapesr/eim0usxmaoik5qt9oihlzr9joobi803i9zqzzqfneppquckieuqy9ri1ka0pa+qhl80divdl2weutplepuifamvcohfauask3xekmcbgd5qirnfuzuphbupmlwbvllo8uy0ogtusqeynmc2yvkskqtzo04qyfumzcmu7xq3krcdsyuippuf1tgisjj/wtzbw6c4zcfylzp+ocxhk1cs5pxsniely51bbjayrk5ogahkuurqgna5jbqe6xzhc3wmadnzpi+yz7mwdpddsc/k+bj/vv/2t7v9cax5cyit/emfdfjbkhy/39dkjcac3sszuf3yewbpb89gvlugnvzsixa8fis7rlrupqhxsogou9rexgz/czpz4yp7rz3xtknjbuful1s+bdsq96m/hrgnovsg+///08/fx2wqizq5bk/iiplmaqz3q22si899g7f85bdiflrbjlua+osbbmwwxndpe9lvcbloak6twldclgnwf5zdj1nso1dqpmfhvzkrkkkqakpbxq+3hkt4ndpuudj11iql+2g6wzsfspmpqdgemthriqa/r7x012vkoxn4tr7+guapcpyftdndm9xzlyoaabeyjd6noqmu4k80uwgq1cav57xtxzzovkc5nqawax7n8nwrvs3jtejox+djpr8y1mt/hxku8p2fytzw0tbdeylszhz7mnfxlg2fastqwfybb1ivlka+bdgnavcadxrziefvfatc0xzhlozzc4vkulvzmt3rwasxas+ccis2v8az3ms0lqjrs1y2kyjoinzrfrjyyhcjdjfe+dlbth+myyhc4rje2qehtxyyn/kcyfd3hjobfaxizkvcsw0hczbpl83ez0soqiojvw0bzzdnnpfrhjywkxe7/w6swzwqmt85h9bjdkrevd5kqs15+cebt4akixcll5hhyepsauxzs1uaxdlynnfe0yzckkioixyexojlilwaui9xzbw7am6gim77nxiualcufavusjqxoiyqvgucnm4+jgjun4q8jcjukltfqgyulin8oac8scqxpararn+/fzxp+23012u24baqziexitjkceh2fw5hnbxhdpixiihnx01zu5iiboqvvtsoexhw/rvsep2ofoo2xivqleqvhmhvj/ves+ku5nudpzdhpc0aruulo21vet/ubckpouwcfll225z/uijgso4+qnv+kqq7bfvirwe17vkjrrkmaxntjtegemofjvicfkhrwqlbib9tugm4thb0qz8xpb0tqa76em/mpua8rkppje2qwnwhcl3el5udtltddmxkeeba96zfrbzlygh3lsesm+fra+s8io2qkwzjewt88gvvbrq+w3ala5ex7othu33/mlwkbog03qnp4agseeviu/xcbwl3ki6q6o3nhao2ju+2aqhro3wk8qs1ng0ky8k2a6wegr2i0fir2ohdrchnrec6unooayfhkjpwjbjdkef58axrugfu+f0j2qwq0yfclgo4zxe0bptoszmhm/z/a3hpudud1hzndw5lie+uohdcpijpkmqk4r99ksa/gx7hc9dgnomojflbtedhuzyrvayqftvwvjbmrh9pkzwumsl0kuwzk2hkvaanxg2f0u8xowitbwzmgwc3tio24ir4z5saw5u3mww72fd67nwddcv9zyjxoequ1+ufuxfdhoricfxivlipfdi1yl0zwqq/v3h814kfbvy3n0ubxwn5htjedylfnm/ew/sj9q/ax73x+vdrk4+simpqva6ngiab9c+dft3iwr2kuqmjosc2ojhcfrpftyoeggfj6fmjo0dmyzb8e40al+whhjydqok9c2hetmq7qhhetr+t2agushsshzgjkywyj8sh5t1jbtzgex6daolyzf06bzyoccu8q/bg/zfnzjpup6eaau/ji/6amopojw7vewkbka9hhavqu9c8abrm0roec7i1sncgrn4gkakpirrkkgg7ltuvlgisntgmaeqbcytsbedssuxoajsqvsluvu73weqwxo3qbd7amgbshenqlfrpwjcfy+d6bqabdk+bcoquamcdeiufvxt1xraxwi3whz1azwgvspxuy/oqh/2bip080239o8libcuuxbd7lyxb24p27xgzeatfbuuoo5drblhyd7k9dzgwaadxa5k+izuee60xagjd3azhkq+prq3sqwarcnxk4bztbxos7xcqw/zkku45dbwgdyj1/nkctie+7tcqo2oimn0pz0/lumo0s/lmeqs5k858unn0lvgwefekl+pfu34pgimyjbutfrx+ouy1dev8w+lqcttctruhqugwsagxsopongqshgiygzcewk607vlfewnh1zu4tpc2okfsvwopbv3fn5dxtvc72yysqvyiomik2orfqntjfpnyqshopjegstrpuh77k2bd4a3gtwssbua/n5aagozfhpbjrel4olh6e6z/gmrdyzlhwgeti7gtxxl+hjzgi0idgkrfp5vfnxfo40fpe7hae6wq5wj5bdgugyvrkun+hlfvcbsumywlqqw2hlywiaolsmnjzuecwgl/7taif1cao5dqhm2hpzcytajo3ezkc8shxzp0eaai5enzplhumcsjhx2beqpevkla4y/w7jt0opjbfzvpw7/sub8uaoqop78qrkpijmb7byxz7t4ugvmsdh67pwwedfozo1ardpozsvswfvfqy9nyazh5shrupw2lwf49df2ermfisxx14qvtkx4lkekq9kmpcgzdxg+yhyh2qxghd5vfa8xzqxcyfulwatelhbcapma4iql3lmwh/37p9vyx9/pa9xy3h562clykj4okjn87vtzowoh6cgqasybqnr1jxkww1pshvf30hbzrkfyryfn4rxenjm0ukrplknbhnnj2at5cjjvvilu1ym2q8l+rvtgn/ol5tdeg1jga+m2hwzgcdtwybxyxshc4h+siffhj/l7p7enzyqsuih1sup2b+syredrcpwrui3h5mbr6xzlzjbxcfxaxrcnwle9ksoh8am2x4uvbvuf4nwg+lebbx2tf659x/hssajvhykrlwely7xzo5vnuxif4gcmpwd8intuadcbf0ge2raundpyjmp3niuhokzujbausbvbkxgefcjixy/g7pzp7zmuoerkz3xe/sjyqhv07gblowpxgh3py/qhd4o9lvgedxbvo1+5w6/wplsox/nta1sofcqwhjzz5jmbkowc07pluf5zds3xdckoyjuh5667jvbczdls/09hy2eirzo/thzt7zukylmbx5ffl7rf5dev9cf5+vqwuhxegzi5lxigcucqwqmglcjfwzj4flzhq9cwgwqp0wykqwqxwqbre5tyg0r/ts/jwn5yr5epmdypvipyacn3kp8mjt+hbcogfgdrd8b+anpl0tvwcofixv/jx/fyn/9nostwoxnm9tgv2asfwzcc2w2ihoy3i4ldlnhqdzzvqk3zwe+ogivlf5zdbwzzjzmhyye+ww7fd1tx1ch5xpd1/96baxkodpzderuifmmfjejh85jr9javhsyhqlh5wmrexjeltejngt521lx45kmmy6hjk0stfwqs5j8kaxqjjol1deexx8od+vmkvejpnufcwmartwgee00x2lkqolxxsejkgrzj0u0hdxrvibyaqhjvzj+bkeqhgskxfozdy6tbd5lfa1r7rjl61lpvgqcgv4cbgbvbw/ijf2dvd+pyheabq5vsvqnrg0uqbgqp3j7yk3bagccdkawyadire+shzxxy8wahu0gj3povhvy77jfvqkbbrtctjujomaiedagm3ntuhfzjwfgo8cjy+lze0ax7sjvxfmu5bcerflic7m45xm1dpaflyq+tkgpltvwlbw9oo8yz5h73sexwugsd3xkilg+sip8/slg3hmsdc8rdum+c9d2da+bj0fnbruarpbkdjxempy13h0gmoywkfpsq4d+th0xccdz5e3vh9e6rilqegnwij/hueoscfgrwmqyptveiuwa7jbu0tz5xqvqxz7zeq8ghryzw9kxprdg7lwxzz1ti3ctkan77jvifwomej/wgw/mj8umgfis9zlsfz6u/4r3c1olcr8sgeqrdjotxmqclqj5jsl/amb+hkv3zcng8wf7sctjclvhiy2fuk7yoqnupexytjjhwkwvace6zhpp4jy/xirzvib8vgs+wq4g5udo3vvqh+94th4xa3m6ecap3jvv+l5bdrblkh6/6rnq0xz/lwrf/8/fgccvsnm7iludwviife0dsjxrbpphb3oeu+hfwjhpp1sls9kjeeudlhyiikmwrrhfvmkgrpkrxixbfayogwmbepa9enuqt7dtppqdoywkaqr97paeopso+s+clu/wahd4beifso/i2an+zsfpiq+bfzi6yvapftsohmis0babv7zkwplsod5+fxmpmwymc+hf/le6fbopzztlydlkkyl7dctifmhgrmprsqkevr/chg9bcqhmc9xjt5bgc/luqu2flycugjnxlfruzssf7jjig/4sgpr/xgrguwd4qhn9dqd1iwzn6ehifk85heszfvkxyc7hmuaj98bzmikogfdjtp9n2kb9eawxc624vpxxfauvn//cahkj6jbtdutqw6syavu90a1scp2oo7bx2l2/hp7jxqx7jc0jnegqmer3j1jrai7nfz8thzoabqyovamejf09jt1fkqtpxayjz6nkvvood/phpoy9tic8sh17sz8/jcbjbdreio/tqksem0n1aucvtcavbdsmb6q4dwbbfeq0a1oezbjkymlfxh3uozfqseole4ssdzskrscssibojrcijmpfijjige4leigkykugkkiatiuqictkrscssibojrcijmpfijjige4leigkykugkkiatiuqikqszscqsszcjrckrbjlijbjjkileipeemugkekmqiuqikqszscqsszcjrckrbjlijbjjkileipeemugkeokkyeqikuictcqsistirckrsijmjbkjjmheipfigkwkeokkyeqikuictcqsistirckrsijmjbkjjmheipfijeemeoleemqikugkqsysiuqszckrspzz+b+grlwhibmxxqaaaabjru5erkjggg==";
 
			function sakura(x, y, s, r, fn) {
				this.x = x;
				this.y = y;
				this.s = s;
				this.r = r;
				this.fn = fn;
			}
 
			sakura.prototype.draw = function(cxt) {
				cxt.save();
				var xc = 40 * this.s / 4;
				cxt.translate(this.x, this.y);
				cxt.rotate(this.r);
				cxt.drawimage(img, 0, 0, 40 * this.s, 40 * this.s)
				cxt.restore();
			}
 
			sakura.prototype.update = function() {
				this.x = this.fn.x(this.x, this.y);
				this.y = this.fn.y(this.y, this.y);
				this.r = this.fn.r(this.r);
				if(this.x > window.innerwidth ||
					this.x < 0 ||
					this.y > window.innerheight ||
					this.y < 0
				) {
					this.r = getrandom('fnr');
					if(math.random() > 0.4) {
						this.x = getrandom('x');
						this.y = 0;
						this.s = getrandom('s');
						this.r = getrandom('r');
					} else {
						this.x = window.innerwidth;
						this.y = getrandom('y');
						this.s = getrandom('s');
						this.r = getrandom('r');
					}
				}
			}
 
			sakuralist = function() {
				this.list = [];
			}
			sakuralist.prototype.push = function(sakura) {
				this.list.push(sakura);
			}
			sakuralist.prototype.update = function() {
				for(var i = 0, len = this.list.length; i < len; i++) {
					this.list[i].update();
				}
			}
			sakuralist.prototype.draw = function(cxt) {
				for(var i = 0, len = this.list.length; i < len; i++) {
					this.list[i].draw(cxt);
				}
			}
			sakuralist.prototype.get = function(i) {
				return this.list[i];
			}
			sakuralist.prototype.size = function() {
				return this.list.length;
			}
 
			function getrandom(option) {
				var ret, random;
				switch(option) {
					case 'x':
						ret = math.random() * window.innerwidth;
						break;
					case 'y':
						ret = math.random() * window.innerheight;
						break;
					case 's':
						ret = math.random();
						break;
					case 'r':
						ret = math.random() * 6;
						break;
					case 'fnx':
						random = -0.5 + math.random() * 1;
						ret = function(x, y) {
							return x + 0.5 * random - 1.7;
						};
						break;
					case 'fny':
						random = 1.5 + math.random() * 0.7
						ret = function(x, y) {
							return y + random;
						};
						break;
					case 'fnr':
						random = math.random() * 0.03;
						ret = function(r) {
							return r + random;
						};
						break;
				}
				return ret;
			}
 
			function startsakura() {
 
				requestanimationframe = window.requestanimationframe ||
					window.mozrequestanimationframe ||
					window.webkitrequestanimationframe ||
					window.msrequestanimationframe ||
					window.orequestanimationframe;
				var canvas = document.createelement('canvas'),
					cxt;
				staticx = true;
				canvas.height = window.innerheight;
				canvas.width = window.innerwidth;
				canvas.setattribute('style', 'position: fixed;left: 0;top: 0;pointer-events: none;');
				canvas.setattribute('id', 'canvas_sakura');
				document.getelementsbytagname('body')[0].appendchild(canvas);
				cxt = canvas.getcontext('2d');
				var sakuralist = new sakuralist();
				for(var i = 0; i < 50; i++) {
					var sakura, randomx, randomy, randoms, randomr, randomfnx, randomfny;
					randomx = getrandom('x');
					randomy = getrandom('y');
					randomr = getrandom('r');
					randoms = getrandom('s');
					randomfnx = getrandom('fnx');
					randomfny = getrandom('fny');
					randomfnr = getrandom('fnr');
					sakura = new sakura(randomx, randomy, randoms, randomr, {
						x: randomfnx,
						y: randomfny,
						r: randomfnr
					});
					sakura.draw(cxt);
					sakuralist.push(sakura);
				}
				stop = requestanimationframe(function() {
					cxt.clearrect(0, 0, canvas.width, canvas.height);
					sakuralist.update();
					sakuralist.draw(cxt);
					stop = requestanimationframe(arguments.callee);
				})
			}
 
			window.onresize = function() {
				var canvassnow = document.getelementbyid('canvas_snow');
				canvassnow.width = window.innerwidth;
				canvassnow.height = window.innerheight;
			}
 
			img.onload = function() {
				startsakura();
			}
 
			function stopp() {
				if(staticx) {
					var child = document.getelementbyid("canvas_sakura");
					child.parentnode.removechild(child);
					window.cancelanimationframe(stop);
					staticx = false;
				} else {
					startsakura();
				}
			}
</script>
</html>

8、蜘蛛网特效

代码

!function () {
    function n(n, e, t) {
        return n.getattribute(e) || t
    }
 
    function e(n) {
        return document.getelementsbytagname(n)
    }
 
    function t() {
        var t = e("script"), o = t.length, i = t[o - 1];
        return {l: o, z: n(i, "zindex", -1), o: n(i, "opacity", .5), c: n(i, "color", "0,0,0"), n: n(i, "count", 99)}
    }
 
    function o() {
        a = m.width = window.innerwidth || document.documentelement.clientwidth || document.body.clientwidth, c = m.height = window.innerheight || document.documentelement.clientheight || document.body.clientheight
    }
 
    function i() {
        r.clearrect(0, 0, a, c);
        var n, e, t, o, m, l;
        s.foreach(function (i, x) {
            for (i.x += i.xa, i.y += i.ya, i.xa *= i.x > a || i.x < 0 ? -1 : 1, i.ya *= i.y > c || i.y < 0 ? -1 : 1, r.fillrect(i.x - .5, i.y - .5, 1, 1), e = x + 1; e < u.length; e++) n = u[e], null !== n.x && null !== n.y && (o = i.x - n.x, m = i.y - n.y, l = o * o + m * m, l < n.max && (n === y && l >= n.max / 2 && (i.x -= .03 * o, i.y -= .03 * m), t = (n.max - l) / n.max, r.beginpath(), r.linewidth = t / 2, r.strokestyle = "rgba(" + d.c + "," + (t + .2) + ")", r.moveto(i.x, i.y), r.lineto(n.x, n.y), r.stroke()))
        }), x(i)
    }
 
    var a, c, u, m = document.createelement("canvas"), d = t(), l = "c_n" + d.l, r = m.getcontext("2d"),
        x = window.requestanimationframe || window.webkitrequestanimationframe || window.mozrequestanimationframe || window.orequestanimationframe || window.msrequestanimationframe || function (n) {
            window.settimeout(n, 1e3 / 45)
        }, w = math.random, y = {x: null, y: null, max: 2e4};
    m.id = l, m.style.csstext = "position:fixed;top:0;left:0;z-index:" + d.z + ";opacity:" + d.o, e("body")[0].appendchild(m), o(), window.onresize = o, window.onmousemove = function (n) {
        n = n || window.event, y.x = n.clientx, y.y = n.clienty
    }, window.onmouseout = function () {
        y.x = null, y.y = null
    };
    for (var s = [], f = 0; d.n > f; f++) {
        var h = w() * a, g = w() * c, v = 2 * w() - 1, p = 2 * w() - 1;
        s.push({x: h, y: g, xa: v, ya: p, max: 6e3})
    }
    u = s.concat([y]), settimeout(function () {
        i()
    }, 100)
}();

9、看板娘(左下角的小人)

代码(直接引入js文件即可)

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/font-awesome/css/font-awesome.min.css">
	<link rel="stylesheet" href="https://cdn.jsdelivr.net/semantic-ui/2.2.4/semantic.min.css">
        <script src="https://cdn.jsdelivr.net/npm/jquery@3.2/dist/jquery.min.js"></script>
	<script src="https://cdn.jsdelivr.net/semantic-ui/2.2.4/semantic.min.js"></script>
	<script src="https://cdn.jsdelivr.net/npm/jquery.scrollto@2.1.2/jquery.scrollto.min.js"></script>
	<script src="https://cdn.jsdelivr.net/gh/stevenjoezhang/live2d-widget@latest/autoload.js"></script>

10、烟花

代码

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>逼真的烟花</title>
<script src="js/jquery.min.js"></script>
<style>
body {
  margin: 0;
  padding: 0;
  background: #000000;
  overflow: hidden;
}
</style>
</head>
<body>
<canvas id="canvas"></canvas>
<!-- best viewed in chrome -->
 
<script>
// fun options!
const particles_per_firework = 150; // 100 - 400 or try 1000
const firework_chance = 0.02; // percentage, set to 0 and click instead
const base_particle_speed = 0.6; // between 0-4, controls the size of the overall fireworks
const firework_lifespan = 600; // ms
const particle_initial_speed = 4.5; // 2-8
 
// not so fun options =\
const gravity = 9.8;
 
 
const canvas = document.getelementbyid('canvas');
const ctx = canvas.getcontext('2d');
 
let particles = [];
let disableautofireworks = false;
let resetdisable = 0;
 
let loop = () => {
  
  if (!disableautofireworks && math.random() < firework_chance) {
    createfirework();
  }
  
  ctx.clearrect(0, 0, canvas.width, canvas.height);
  
  particles.foreach((particle, i) => {
    particle.animate();
    particle.render();
    if (particle.y > canvas.height 
        || particle.x < 0 
        || particle.x > canvas.width
        || particle.alpha <= 0
       ) {
      particles.splice(i, 1);
    }
  });
  
  requestanimationframe(loop);
  
};
 
let createfirework = (
    x = math.random() * canvas.width,
    y = math.random() * canvas.height
  ) => {
  
  let speed = (math.random() * 2) + base_particle_speed;
  let maxspeed = speed;
 
  let red = ~~(math.random() * 255);
  let green = ~~(math.random() * 255);
  let blue = ~~(math.random() * 255);
  
  // use brighter colours
  red = (red < 150 ? red + 150 : red);
  green = (green < 150 ? green + 150 : green);
  blue = (blue < 150 ? blue + 150 : blue);
 
  // inner firework
  for (let i = 0; i < particles_per_firework; i++) {
    let particle = new particle(x, y, red, green, blue, speed);
    particles.push(particle);
 
    maxspeed = (speed > maxspeed ? speed : maxspeed);
  }
 
  // outer edge particles to make the firework appear more full
  for (let i = 0; i < 40; i++) {
    let particle = new particle(x, y, red, green, blue, maxspeed, true);
    particles.push(particle);
  }
  
};
 
class particle {
  
  constructor(
    x = 0,
    y = 0, 
    red = ~~(math.random() * 255), 
    green = ~~(math.random() * 255), 
    blue = ~~(math.random() * 255), 
    speed, 
    isfixedspeed
  ) {
    
    this.x = x;
    this.y = y;
    this.red = red;
    this.green = green;
    this.blue = blue;
    this.alpha = 0.05;
    this.radius = 1 + math.random();
    this.angle = math.random() * 360;
    this.speed = (math.random() * speed) + 0.1;
    this.velocityx = math.cos(this.angle) * this.speed;
    this.velocityy = math.sin(this.angle) * this.speed;
    this.starttime = (new date()).gettime();
    this.duration = math.random() * 300 + firework_lifespan;
    this.currentdiration = 0;
    this.dampening = 30; // slowing factor at the end
    
    this.colour = this.getcolour();
    
    if (isfixedspeed) {
      this.speed = speed;
      this.velocityy = math.sin(this.angle) * this.speed;
      this.velocityx = math.cos(this.angle) * this.speed;
    }
    
    this.initialvelocityx = this.velocityx;
    this.initialvelocityy = this.velocityy;
 
  }
  
  animate() {
    
    this.currentduration = (new date()).gettime() - this.starttime;
    
    // initial speed kick
    if (this.currentduration <= 200) {
      
      this.x += this.initialvelocityx * particle_initial_speed;
      this.y += this.initialvelocityy * particle_initial_speed;
      this.alpha += 0.01;
 
      this.colour = this.getcolour(240, 240, 240, 0.9);
      
    } else {
      
      // normal expansion
      this.x += this.velocityx;
      this.y += this.velocityy;
      this.colour = this.getcolour(this.red, this.green, this.blue, 0.4 + (math.random() * 0.3));
      
    }
    
    this.velocityy += gravity / 1000;
    
    // slow down particles at the end
    if (this.currentduration >= this.duration) {
      this.velocityx -= this.velocityx / this.dampening; 
      this.velocityy -= this.velocityy / this.dampening;
    }
    
    if (this.currentduration >= this.duration + this.duration / 1.1) {
      
      // fade out at the end
      this.alpha -= 0.02;
      this.colour = this.getcolour();
      
    } else {
      
      // fade in during expansion
      if (this.alpha < 1) {
        this.alpha += 0.03;
      }
      
    }
  }
  
  render() {
    
    ctx.beginpath();
    ctx.arc(this.x, this.y, this.radius, 0, math.pi * 2, true);
    ctx.linewidth = this.linewidth;
    ctx.fillstyle = this.colour;
    ctx.shadowblur = 8;
    ctx.shadowcolor = this.getcolour(this.red + 150, this.green + 150, this.blue + 150, 1);
    ctx.fill();
    
  }
  
  getcolour(red, green, blue, alpha) {
    
    return `rgba(${red || this.red}, ${green || this.green}, ${blue || this.blue}, ${alpha || this.alpha})`;
    
  }
  
}
 
let updatecanvassize = () => {
  canvas.width = window.innerwidth;
  canvas.height = window.innerheight;
};
 
 
// run it!
 
updatecanvassize();
$(window).resize(updatecanvassize);
$(canvas).on('click', (e) => {
  
  createfirework(e.clientx, e.clienty);
  
  // stop fireworks when clicked, re-enable after short time
  disableautofireworks = true;
  cleartimeout(resetdisable);
  resetdisable = settimeout(() => {
    disableautofireworks = false;
  }, 5000);
  
});
 
loop();
 
</script>
 
</body>
</html>



以上就是关于“使用JS实现十类美观的页面动态效果”的相关知识,感谢各位的阅读,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注群英网络,小编每天都会为大家更新不同的知识。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: JS,网页,特效
相关信息推荐
2022-10-27 18:48:17 
摘要:Trigger(窗口触发器)决定了窗口(由 WindowAssigner 产生)什么时候调用窗口处理函数。可以根据指定的时间或数据元素条件来决定什么时候触发。本文将详细讲讲其用法,需要的可以参考一下
2022-01-26 09:16:54 
摘要:用PHP怎么样实现翻译功能?对于翻译的功能相信大家都不陌生,那么我们如果是使用PHP来实现这个功能要怎样做呢?对此,下文给大家分享一个示例,文中示例代码有一定的参考学习价值,需要的朋友可以参考了解看看。
2022-02-17 18:29:40 
摘要:这篇文章给大家分享的是Linux中搭建PHP环境的方法过程。文中的教程介绍得很详细,不了解如何进行PHP环境配置的朋友可以参考,接下来就跟随小编一起了解看看吧。
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部