function hexToRgb(n){var t;return n=n.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,function(n,t,i,r){return t+t+i+i+r+r}),t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(n),t?{r:parseInt(t[1],16),g:parseInt(t[2],16),b:parseInt(t[3],16)}:null}function clamp(n,t,i){return Math.min(Math.max(n,t),i)}function isInArray(n,t){return t.indexOf(n)>-1}var pJS=function(n,t){var r=document.querySelector("#"+n+" > .particles-js-canvas-el"),i;this.pJS={canvas:{el:r,w:r.offsetWidth,h:r.offsetHeight},particles:{number:{value:400,density:{enable:!0,value_area:800}},color:{value:"#fff"},shape:{type:"circle",stroke:{width:0,color:"#ff0000"},polygon:{nb_sides:5},image:{src:"",width:100,height:100}},opacity:{value:1,random:!1,anim:{enable:!1,speed:2,opacity_min:0,sync:!1}},size:{value:20,random:!1,anim:{enable:!1,speed:20,size_min:0,sync:!1}},line_linked:{enable:!0,distance:100,color:"#fff",opacity:1,width:1},move:{enable:!0,speed:2,direction:"none",random:!1,straight:!1,out_mode:"out",bounce:!1,attract:{enable:!1,rotateX:3e3,rotateY:3e3}},array:[]},interactivity:{detect_on:"canvas",events:{onhover:{enable:!0,mode:"grab"},onclick:{enable:!0,mode:"push"},resize:!0},modes:{grab:{distance:100,line_linked:{opacity:1}},bubble:{distance:200,size:80,duration:.4},repulse:{distance:200,duration:.4},push:{particles_nb:4},remove:{particles_nb:2}},mouse:{}},retina_detect:!1,fn:{interact:{},modes:{},vendors:{}},tmp:{}};i=this.pJS;t&&Object.deepExtend(i,t);i.tmp.obj={size_value:i.particles.size.value,size_anim_speed:i.particles.size.anim.speed,move_speed:i.particles.move.speed,line_linked_distance:i.particles.line_linked.distance,line_linked_width:i.particles.line_linked.width,mode_grab_distance:i.interactivity.modes.grab.distance,mode_bubble_distance:i.interactivity.modes.bubble.distance,mode_bubble_size:i.interactivity.modes.bubble.size,mode_repulse_distance:i.interactivity.modes.repulse.distance};i.fn.retinaInit=function(){i.retina_detect&&window.devicePixelRatio>1?(i.canvas.pxratio=window.devicePixelRatio,i.tmp.retina=!0):(i.canvas.pxratio=1,i.tmp.retina=!1);i.canvas.w=i.canvas.el.offsetWidth*i.canvas.pxratio;i.canvas.h=i.canvas.el.offsetHeight*i.canvas.pxratio;i.particles.size.value=i.tmp.obj.size_value*i.canvas.pxratio;i.particles.size.anim.speed=i.tmp.obj.size_anim_speed*i.canvas.pxratio;i.particles.move.speed=i.tmp.obj.move_speed*i.canvas.pxratio;i.particles.line_linked.distance=i.tmp.obj.line_linked_distance*i.canvas.pxratio;i.interactivity.modes.grab.distance=i.tmp.obj.mode_grab_distance*i.canvas.pxratio;i.interactivity.modes.bubble.distance=i.tmp.obj.mode_bubble_distance*i.canvas.pxratio;i.particles.line_linked.width=i.tmp.obj.line_linked_width*i.canvas.pxratio;i.interactivity.modes.bubble.size=i.tmp.obj.mode_bubble_size*i.canvas.pxratio;i.interactivity.modes.repulse.distance=i.tmp.obj.mode_repulse_distance*i.canvas.pxratio};i.fn.canvasInit=function(){i.canvas.ctx=i.canvas.el.getContext("2d")};i.fn.canvasSize=function(){i.canvas.el.width=i.canvas.w;i.canvas.el.height=i.canvas.h;i&&i.interactivity.events.resize&&window.addEventListener("resize",function(){i.canvas.w=i.canvas.el.offsetWidth;i.canvas.h=i.canvas.el.offsetHeight;i.tmp.retina&&(i.canvas.w*=i.canvas.pxratio,i.canvas.h*=i.canvas.pxratio);i.canvas.el.width=i.canvas.w;i.canvas.el.height=i.canvas.h;i.particles.move.enable||(i.fn.particlesEmpty(),i.fn.particlesCreate(),i.fn.particlesDraw(),i.fn.vendors.densityAutoParticles());i.fn.vendors.densityAutoParticles()})};i.fn.canvasPaint=function(){i.canvas.ctx.fillRect(0,0,i.canvas.w,i.canvas.h)};i.fn.canvasClear=function(){i.canvas.ctx.clearRect(0,0,i.canvas.w,i.canvas.h)};i.fn.particle=function(n,t,r){var o,u,f,s,e;(this.radius=(i.particles.size.random?Math.random():1)*i.particles.size.value,i.particles.size.anim.enable&&(this.size_status=!1,this.vs=i.particles.size.anim.speed/100,i.particles.size.anim.sync||(this.vs=this.vs*Math.random())),this.x=r?r.x:Math.random()*i.canvas.w,this.y=r?r.y:Math.random()*i.canvas.h,this.x>i.canvas.w-2*this.radius?this.x=this.x-this.radius:this.x<2*this.radius&&(this.x=this.x+this.radius),this.y>i.canvas.h-2*this.radius?this.y=this.y-this.radius:this.y<2*this.radius&&(this.y=this.y+this.radius),i.particles.move.bounce&&i.fn.vendors.checkOverlap(this,r),this.color={},"object"==typeof n.value)?n.value instanceof Array?(o=n.value[Math.floor(Math.random()*i.particles.color.value.length)],this.color.rgb=hexToRgb(o)):(void 0!=n.value.r&&void 0!=n.value.g&&void 0!=n.value.b&&(this.color.rgb={r:n.value.r,g:n.value.g,b:n.value.b}),void 0!=n.value.h&&void 0!=n.value.s&&void 0!=n.value.l&&(this.color.hsl={h:n.value.h,s:n.value.s,l:n.value.l})):"random"==n.value?this.color.rgb={r:Math.floor(256*Math.random())+0,g:Math.floor(256*Math.random())+0,b:Math.floor(256*Math.random())+0}:"string"==typeof n.value&&(this.color=n,this.color.rgb=hexToRgb(this.color.value));this.opacity=(i.particles.opacity.random?Math.random():1)*i.particles.opacity.value;i.particles.opacity.anim.enable&&(this.opacity_status=!1,this.vo=i.particles.opacity.anim.speed/100,i.particles.opacity.anim.sync||(this.vo=this.vo*Math.random()));u={};switch(i.particles.move.direction){case"top":u={x:0,y:-1};break;case"top-right":u={x:.5,y:-.5};break;case"right":u={x:1,y:-0};break;case"bottom-right":u={x:.5,y:.5};break;case"bottom":u={x:0,y:1};break;case"bottom-left":u={x:-.5,y:1};break;case"left":u={x:-1,y:0};break;case"top-left":u={x:-.5,y:-.5};break;default:u={x:0,y:0}}i.particles.move.straight?(this.vx=u.x,this.vy=u.y,i.particles.move.random&&(this.vx=this.vx*Math.random(),this.vy=this.vy*Math.random())):(this.vx=u.x+Math.random()-.5,this.vy=u.y+Math.random()-.5);this.vx_i=this.vx;this.vy_i=this.vy;f=i.particles.shape.type;"object"==typeof f?f instanceof Array&&(s=f[Math.floor(Math.random()*f.length)],this.shape=s):this.shape=f;"image"==this.shape&&(e=i.particles.shape,this.img={src:e.image.src,ratio:e.image.width/e.image.height},this.img.ratio||(this.img.ratio=1),"svg"==i.tmp.img_type&&void 0!=i.tmp.source_svg&&(i.fn.vendors.createSvgImg(this),i.tmp.pushing&&(this.img.loaded=!1)))};i.fn.particle.prototype.draw=function(){function e(){i.canvas.ctx.drawImage(u,n.x-t,n.y-t,2*t,2*t/n.img.ratio)}var n=this,t,r,f,u;t=void 0!=n.radius_bubble?n.radius_bubble:n.radius;r=void 0!=n.opacity_bubble?n.opacity_bubble:n.opacity;f=n.color.rgb?"rgba("+n.color.rgb.r+","+n.color.rgb.g+","+n.color.rgb.b+","+r+")":"hsla("+n.color.hsl.h+","+n.color.hsl.s+"%,"+n.color.hsl.l+"%,"+r+")";switch(i.canvas.ctx.fillStyle=f,i.canvas.ctx.beginPath(),n.shape){case"circle":i.canvas.ctx.arc(n.x,n.y,t,0,2*Math.PI,!1);break;case"edge":i.canvas.ctx.rect(n.x-t,n.y-t,2*t,2*t);break;case"triangle":i.fn.vendors.drawShape(i.canvas.ctx,n.x-t,n.y+t/1.66,2*t,3,2);break;case"polygon":i.fn.vendors.drawShape(i.canvas.ctx,n.x-t/(i.particles.shape.polygon.nb_sides/3.5),n.y-t/.76,2.66*t/(i.particles.shape.polygon.nb_sides/3),i.particles.shape.polygon.nb_sides,1);break;case"star":i.fn.vendors.drawShape(i.canvas.ctx,n.x-2*t/(i.particles.shape.polygon.nb_sides/4),n.y-t/1.52,2*t*2.66/(i.particles.shape.polygon.nb_sides/3),i.particles.shape.polygon.nb_sides,2);break;case"image":u="svg"==i.tmp.img_type?n.img.obj:i.tmp.img_obj;u&&e()}i.canvas.ctx.closePath();i.particles.shape.stroke.width>0&&(i.canvas.ctx.strokeStyle=i.particles.shape.stroke.color,i.canvas.ctx.lineWidth=i.particles.shape.stroke.width,i.canvas.ctx.stroke());i.canvas.ctx.fill()};i.fn.particlesCreate=function(){for(var n=0;n<i.particles.number.value;n++)i.particles.array.push(new i.fn.particle(i.particles.color,i.particles.opacity.value))};i.fn.particlesUpdate=function(){for(var n,e,r,u,f,t=0;t<i.particles.array.length;t++){n=i.particles.array[t];i.particles.move.enable&&(e=i.particles.move.speed/2,n.x+=n.vx*e,n.y+=n.vy*e);r=(i.particles.opacity.anim.enable&&(1==n.opacity_status?(n.opacity>=i.particles.opacity.value&&(n.opacity_status=!1),n.opacity+=n.vo):(n.opacity<=i.particles.opacity.anim.opacity_min&&(n.opacity_status=!0),n.opacity-=n.vo),n.opacity<0&&(n.opacity=0)),i.particles.size.anim.enable&&(1==n.size_status?(n.radius>=i.particles.size.value&&(n.size_status=!1),n.radius+=n.vs):(n.radius<=i.particles.size.anim.size_min&&(n.size_status=!0),n.radius-=n.vs),n.radius<0&&(n.radius=0)),"bounce"==i.particles.move.out_mode)?{x_left:n.radius,x_right:i.canvas.w,y_top:n.radius,y_bottom:i.canvas.h}:{x_left:-n.radius,x_right:i.canvas.w+n.radius,y_top:-n.radius,y_bottom:i.canvas.h+n.radius};switch(n.x-n.radius>i.canvas.w?(n.x=r.x_left,n.y=Math.random()*i.canvas.h):n.x+n.radius<0&&(n.x=r.x_right,n.y=Math.random()*i.canvas.h),n.y-n.radius>i.canvas.h?(n.y=r.y_top,n.x=Math.random()*i.canvas.w):n.y+n.radius<0&&(n.y=r.y_bottom,n.x=Math.random()*i.canvas.w),i.particles.move.out_mode){case"bounce":n.x+n.radius>i.canvas.w?n.vx=-n.vx:n.x-n.radius<0&&(n.vx=-n.vx);n.y+n.radius>i.canvas.h?n.vy=-n.vy:n.y-n.radius<0&&(n.vy=-n.vy)}if(isInArray("grab",i.interactivity.events.onhover.mode)&&i.fn.modes.grabParticle(n),(isInArray("bubble",i.interactivity.events.onhover.mode)||isInArray("bubble",i.interactivity.events.onclick.mode))&&i.fn.modes.bubbleParticle(n),(isInArray("repulse",i.interactivity.events.onhover.mode)||isInArray("repulse",i.interactivity.events.onclick.mode))&&i.fn.modes.repulseParticle(n),i.particles.line_linked.enable||i.particles.move.attract.enable)for(u=t+1;u<i.particles.array.length;u++)f=i.particles.array[u],i.particles.line_linked.enable&&i.fn.interact.linkParticles(n,f),i.particles.move.attract.enable&&i.fn.interact.attractParticles(n,f),i.particles.move.bounce&&i.fn.interact.bounceParticles(n,f)}};i.fn.particlesDraw=function(){var n,t;for(i.canvas.ctx.clearRect(0,0,i.canvas.w,i.canvas.h),i.fn.particlesUpdate(),n=0;n<i.particles.array.length;n++)t=i.particles.array[n],t.draw()};i.fn.particlesEmpty=function(){i.particles.array=[]};i.fn.particlesRefresh=function(){cancelRequestAnimFrame(i.fn.checkAnimFrame);cancelRequestAnimFrame(i.fn.drawAnimFrame);i.tmp.source_svg=void 0;i.tmp.img_obj=void 0;i.tmp.count_svg=0;i.fn.particlesEmpty();i.fn.canvasClear();i.fn.vendors.start()};i.fn.interact.linkParticles=function(n,t){var f=n.x-t.x,e=n.y-t.y,o=Math.sqrt(f*f+e*e),u,r;o<=i.particles.line_linked.distance&&(u=i.particles.line_linked.opacity-o/(1/i.particles.line_linked.opacity)/i.particles.line_linked.distance,u>0&&(r=i.particles.line_linked.color_rgb_line,i.canvas.ctx.strokeStyle="rgba("+r.r+","+r.g+","+r.b+","+u+")",i.canvas.ctx.lineWidth=i.particles.line_linked.width,i.canvas.ctx.beginPath(),i.canvas.ctx.moveTo(n.x,n.y),i.canvas.ctx.lineTo(t.x,t.y),i.canvas.ctx.stroke(),i.canvas.ctx.closePath()))};i.fn.interact.attractParticles=function(n,t){var r=n.x-t.x,u=n.y-t.y,o=Math.sqrt(r*r+u*u),f,e;o<=i.particles.line_linked.distance&&(f=r/(1e3*i.particles.move.attract.rotateX),e=u/(1e3*i.particles.move.attract.rotateY),n.vx-=f,n.vy-=e,t.vx+=f,t.vy+=e)};i.fn.interact.bounceParticles=function(n,t){var i=n.x-t.x,r=n.y-t.y,u=Math.sqrt(i*i+r*r),f=n.radius+t.radius;f>=u&&(n.vx=-n.vx,n.vy=-n.vy,t.vx=-t.vx,t.vy=-t.vy)};i.fn.modes.pushParticles=function(n,t){i.tmp.pushing=!0;for(var r=0;n>r;r++)i.particles.array.push(new i.fn.particle(i.particles.color,i.particles.opacity.value,{x:t?t.pos_x:Math.random()*i.canvas.w,y:t?t.pos_y:Math.random()*i.canvas.h})),r==n-1&&(i.particles.move.enable||i.fn.particlesDraw(),i.tmp.pushing=!1)};i.fn.modes.removeParticles=function(n){i.particles.array.splice(0,n);i.particles.move.enable||i.fn.particlesDraw()};i.fn.modes.bubbleParticle=function(n){function h(){n.opacity_bubble=n.opacity;n.radius_bubble=n.radius}function c(t,r,u,f,e){var c,l,a,h;t!=r&&(i.tmp.bubble_duration_end?void 0!=u&&(c=f-o*(f-t)/i.interactivity.modes.bubble.duration,l=t-c,h=t+l,"size"==e&&(n.radius_bubble=h),"opacity"==e&&(n.opacity_bubble=h)):s<=i.interactivity.modes.bubble.distance?(a=void 0!=u?u:f,a!=t&&(h=f-o*(f-t)/i.interactivity.modes.bubble.duration,"size"==e&&(n.radius_bubble=h),"opacity"==e&&(n.opacity_bubble=h))):("size"==e&&(n.radius_bubble=void 0),"opacity"==e&&(n.opacity_bubble=void 0)))}var l,r,t;if(i.interactivity.events.onhover.enable&&isInArray("bubble",i.interactivity.events.onhover.mode)){var f=n.x-i.interactivity.mouse.pos_x,e=n.y-i.interactivity.mouse.pos_y,s=Math.sqrt(f*f+e*e),u=1-s/i.interactivity.modes.bubble.distance;s<=i.interactivity.modes.bubble.distance?u>=0&&"mousemove"==i.interactivity.status&&(i.interactivity.modes.bubble.size!=i.particles.size.value&&(i.interactivity.modes.bubble.size>i.particles.size.value?(r=n.radius+i.interactivity.modes.bubble.size*u,r>=0&&(n.radius_bubble=r)):(l=n.radius-i.interactivity.modes.bubble.size,r=n.radius-l*u,n.radius_bubble=r>0?r:0)),i.interactivity.modes.bubble.opacity!=i.particles.opacity.value&&(i.interactivity.modes.bubble.opacity>i.particles.opacity.value?(t=i.interactivity.modes.bubble.opacity*u,t>n.opacity&&t<=i.interactivity.modes.bubble.opacity&&(n.opacity_bubble=t)):(t=n.opacity-(i.particles.opacity.value-i.interactivity.modes.bubble.opacity)*u,t<n.opacity&&t>=i.interactivity.modes.bubble.opacity&&(n.opacity_bubble=t)))):h();"mouseleave"==i.interactivity.status&&h()}else if(i.interactivity.events.onclick.enable&&isInArray("bubble",i.interactivity.events.onclick.mode)){if(i.tmp.bubble_clicking){var f=n.x-i.interactivity.mouse.click_pos_x,e=n.y-i.interactivity.mouse.click_pos_y,s=Math.sqrt(f*f+e*e),o=((new Date).getTime()-i.interactivity.mouse.click_time)/1e3;o>i.interactivity.modes.bubble.duration&&(i.tmp.bubble_duration_end=!0);o>2*i.interactivity.modes.bubble.duration&&(i.tmp.bubble_clicking=!1,i.tmp.bubble_duration_end=!1)}i.tmp.bubble_clicking&&(c(i.interactivity.modes.bubble.size,i.particles.size.value,n.radius_bubble,n.radius,"size"),c(i.interactivity.modes.bubble.opacity,i.particles.opacity.value,n.opacity_bubble,n.opacity,"opacity"))}};i.fn.modes.repulseParticle=function(n){function v(){var r=Math.atan2(s,o),t;(n.vx=a*Math.cos(r),n.vy=a*Math.sin(r),"bounce"==i.particles.move.out_mode)&&(t={x:n.x+n.vx,y:n.y+n.vy},t.x+n.radius>i.canvas.w?n.vx=-n.vx:t.x-n.radius<0&&(n.vx=-n.vx),t.y+n.radius>i.canvas.h?n.vy=-n.vy:t.y-n.radius<0&&(n.vy=-n.vy))}if(i.interactivity.events.onhover.enable&&isInArray("repulse",i.interactivity.events.onhover.mode)&&"mousemove"==i.interactivity.status){var u=n.x-i.interactivity.mouse.pos_x,f=n.y-i.interactivity.mouse.pos_y,e=Math.sqrt(u*u+f*f),h={x:u/e,y:f/e},r=i.interactivity.modes.repulse.distance,c=clamp(1/r*(-1*Math.pow(e/r,2)+1)*r*100,0,50),t={x:n.x+h.x*c,y:n.y+h.y*c};"bounce"==i.particles.move.out_mode?(t.x-n.radius>0&&t.x+n.radius<i.canvas.w&&(n.x=t.x),t.y-n.radius>0&&t.y+n.radius<i.canvas.h&&(n.y=t.y)):(n.x=t.x,n.y=t.y)}else if(i.interactivity.events.onclick.enable&&isInArray("repulse",i.interactivity.events.onclick.mode))if(i.tmp.repulse_finish||(i.tmp.repulse_count++,i.tmp.repulse_count==i.particles.array.length&&(i.tmp.repulse_finish=!0)),i.tmp.repulse_clicking){var r=Math.pow(i.interactivity.modes.repulse.distance/6,3),o=i.interactivity.mouse.click_pos_x-n.x,s=i.interactivity.mouse.click_pos_y-n.y,l=o*o+s*s,a=-r/l*1;r>=l&&v()}else 0==i.tmp.repulse_clicking&&(n.vx=n.vx_i,n.vy=n.vy_i)};i.fn.modes.grabParticle=function(n){var r,t;if(i.interactivity.events.onhover.enable&&"mousemove"==i.interactivity.status){var u=n.x-i.interactivity.mouse.pos_x,f=n.y-i.interactivity.mouse.pos_y,e=Math.sqrt(u*u+f*f);e<=i.interactivity.modes.grab.distance&&(r=i.interactivity.modes.grab.line_linked.opacity-e/(1/i.interactivity.modes.grab.line_linked.opacity)/i.interactivity.modes.grab.distance,r>0&&(t=i.particles.line_linked.color_rgb_line,i.canvas.ctx.strokeStyle="rgba("+t.r+","+t.g+","+t.b+","+r+")",i.canvas.ctx.lineWidth=i.particles.line_linked.width,i.canvas.ctx.beginPath(),i.canvas.ctx.moveTo(n.x,n.y),i.canvas.ctx.lineTo(i.interactivity.mouse.pos_x,i.interactivity.mouse.pos_y),i.canvas.ctx.stroke(),i.canvas.ctx.closePath()))}};i.fn.vendors.eventsListeners=function(){i.interactivity.el="window"==i.interactivity.detect_on?window:i.canvas.el;(i.interactivity.events.onhover.enable||i.interactivity.events.onclick.enable)&&(i.interactivity.el.addEventListener("mousemove",function(n){var t,r;i.interactivity.el==window?(t=n.clientX,r=n.clientY):(t=n.offsetX||n.clientX,r=n.offsetY||n.clientY);i.interactivity.mouse.pos_x=t;i.interactivity.mouse.pos_y=r;i.tmp.retina&&(i.interactivity.mouse.pos_x*=i.canvas.pxratio,i.interactivity.mouse.pos_y*=i.canvas.pxratio);i.interactivity.status="mousemove"}),i.interactivity.el.addEventListener("mouseleave",function(){i.interactivity.mouse.pos_x=null;i.interactivity.mouse.pos_y=null;i.interactivity.status="mouseleave"}));i.interactivity.events.onclick.enable&&i.interactivity.el.addEventListener("click",function(){if(i.interactivity.mouse.click_pos_x=i.interactivity.mouse.pos_x,i.interactivity.mouse.click_pos_y=i.interactivity.mouse.pos_y,i.interactivity.mouse.click_time=(new Date).getTime(),i.interactivity.events.onclick.enable)switch(i.interactivity.events.onclick.mode){case"push":i.particles.move.enable?i.fn.modes.pushParticles(i.interactivity.modes.push.particles_nb,i.interactivity.mouse):1==i.interactivity.modes.push.particles_nb?i.fn.modes.pushParticles(i.interactivity.modes.push.particles_nb,i.interactivity.mouse):i.interactivity.modes.push.particles_nb>1&&i.fn.modes.pushParticles(i.interactivity.modes.push.particles_nb);break;case"remove":i.fn.modes.removeParticles(i.interactivity.modes.remove.particles_nb);break;case"bubble":i.tmp.bubble_clicking=!0;break;case"repulse":i.tmp.repulse_clicking=!0;i.tmp.repulse_count=0;i.tmp.repulse_finish=!1;setTimeout(function(){i.tmp.repulse_clicking=!1},1e3*i.interactivity.modes.repulse.duration)}})};i.fn.vendors.densityAutoParticles=function(){var t,r,n;i.particles.number.density.enable&&(t=i.canvas.el.width*i.canvas.el.height/1e3,i.tmp.retina&&(t/=2*i.canvas.pxratio),r=t*i.particles.number.value/i.particles.number.density.value_area,n=i.particles.array.length-r,0>n?i.fn.modes.pushParticles(Math.abs(n)):i.fn.modes.removeParticles(n))};i.fn.vendors.checkOverlap=function(n,t){for(var r=0;r<i.particles.array.length;r++){var u=i.particles.array[r],f=n.x-u.x,e=n.y-u.y,o=Math.sqrt(f*f+e*e);o<=n.radius+u.radius&&(n.x=t?t.x:Math.random()*i.canvas.w,n.y=t?t.y:Math.random()*i.canvas.h,i.fn.vendors.checkOverlap(n))}};i.fn.vendors.createSvgImg=function(n){var f=i.tmp.source_svg,e=f.replace(/#([0-9A-F]{3,6})/gi,function(){var t;return n.color.rgb?"rgba("+n.color.rgb.r+","+n.color.rgb.g+","+n.color.rgb.b+","+n.opacity+")":"hsla("+n.color.hsl.h+","+n.color.hsl.s+"%,"+n.color.hsl.l+"%,"+n.opacity+")"}),o=new Blob([e],{type:"image/svg+xml;charset=utf-8"}),r=window.URL||window.webkitURL||window,u=r.createObjectURL(o),t=new Image;t.addEventListener("load",function(){n.img.obj=t;n.img.loaded=!0;r.revokeObjectURL(u);i.tmp.count_svg++});t.src=u};i.fn.vendors.destroypJS=function(){cancelAnimationFrame(i.fn.drawAnimFrame);r.remove();pJSDom=null};i.fn.vendors.drawShape=function(n,t,i,r,u,f){var s=u*f,o=u/f,h=180*(o-2)/o,c=Math.PI-Math.PI*h/180,e;for(n.save(),n.beginPath(),n.translate(t,i),n.moveTo(0,0),e=0;s>e;e++)n.lineTo(r,0),n.translate(r,0),n.rotate(c);n.fill();n.restore()};i.fn.vendors.exportImg=function(){window.open(i.canvas.el.toDataURL("image/png"),"_blank")};i.fn.vendors.loadImg=function(n){var t,r;(i.tmp.img_error=void 0,""!=i.particles.shape.image.src)?"svg"==n?(t=new XMLHttpRequest,t.open("GET",i.particles.shape.image.src),t.onreadystatechange=function(n){4==t.readyState&&(200==t.status?(i.tmp.source_svg=n.currentTarget.response,i.fn.vendors.checkBeforeDraw()):(console.log("Error pJS - Image not found"),i.tmp.img_error=!0))},t.send()):(r=new Image,r.addEventListener("load",function(){i.tmp.img_obj=r;i.fn.vendors.checkBeforeDraw()}),r.src=i.particles.shape.image.src):(console.log("Error pJS - No image.src"),i.tmp.img_error=!0)};i.fn.vendors.draw=function(){"image"==i.particles.shape.type?"svg"==i.tmp.img_type?i.tmp.count_svg>=i.particles.number.value?(i.fn.particlesDraw(),i.particles.move.enable?i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw):cancelRequestAnimFrame(i.fn.drawAnimFrame)):i.tmp.img_error||(i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw)):void 0!=i.tmp.img_obj?(i.fn.particlesDraw(),i.particles.move.enable?i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw):cancelRequestAnimFrame(i.fn.drawAnimFrame)):i.tmp.img_error||(i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw)):(i.fn.particlesDraw(),i.particles.move.enable?i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw):cancelRequestAnimFrame(i.fn.drawAnimFrame))};i.fn.vendors.checkBeforeDraw=function(){"image"==i.particles.shape.type?"svg"==i.tmp.img_type&&void 0==i.tmp.source_svg?i.tmp.checkAnimFrame=requestAnimFrame(check):(cancelRequestAnimFrame(i.tmp.checkAnimFrame),i.tmp.img_error||(i.fn.vendors.init(),i.fn.vendors.draw())):(i.fn.vendors.init(),i.fn.vendors.draw())};i.fn.vendors.init=function(){i.fn.retinaInit();i.fn.canvasInit();i.fn.canvasSize();i.fn.canvasPaint();i.fn.particlesCreate();i.fn.vendors.densityAutoParticles();i.particles.line_linked.color_rgb_line=hexToRgb(i.particles.line_linked.color)};i.fn.vendors.start=function(){isInArray("image",i.particles.shape.type)?(i.tmp.img_type=i.particles.shape.image.src.substr(i.particles.shape.image.src.length-3),i.fn.vendors.loadImg(i.tmp.img_type)):i.fn.vendors.checkBeforeDraw()};i.fn.vendors.eventsListeners();i.fn.vendors.start()};Object.deepExtend=function(n,t){for(var i in t)t[i]&&t[i].constructor&&t[i].constructor===Object?(n[i]=n[i]||{},arguments.callee(n[i],t[i])):n[i]=t[i];return n};window.requestAnimFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(n){window.setTimeout(n,1e3/60)}}();window.cancelRequestAnimFrame=function(){return window.cancelAnimationFrame||window.webkitCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||window.oCancelRequestAnimationFrame||window.msCancelRequestAnimationFrame||clearTimeout}();window.pJSDom=[];window.particlesJS=function(n,t){var i,e;"string"!=typeof n&&(t=n,n="particles-js");n||(n="particles-js");var u=document.getElementById(n),f="particles-js-canvas-el",r=u.getElementsByClassName(f);if(r.length)for(;r.length>0;)u.removeChild(r[0]);i=document.createElement("canvas");i.className=f;i.style.width="100%";i.style.height="100%";e=document.getElementById(n).appendChild(i);null!=e&&pJSDom.push(new pJS(n,t))};window.particlesJS.load=function(n,t,i){var r=new XMLHttpRequest;r.open("GET",t);r.onreadystatechange=function(t){if(4==r.readyState)if(200==r.status){var u=JSON.parse(t.currentTarget.response);window.particlesJS(n,u);i&&i()}else console.log("Error pJS - XMLHttpRequest status: "+r.status),console.log("Error pJS - File config not found")};r.send()};!function(n){"function"==typeof define&&define.amd&&define.amd.jQuery?define(["jquery"],n):n("undefined"!=typeof module&&module.exports?require("jquery"):jQuery)}(function(n){"use strict";function ut(t){return!t||void 0!==t.allowPageScroll||void 0===t.swipe&&void 0===t.swipeStatus||(t.allowPageScroll=o),void 0!==t.click&&void 0===t.tap&&(t.tap=t.click),t||(t={}),t=n.extend({},n.fn.swipe.defaults,t),this.each(function(){var r=n(this),i=r.data(c);i||(i=new ft(this,t),r.data(c,i))})}function ft(ut,ft){function ki(t){var r,f,u,e;if(!(pu()||n(t.target).closest(ft.excludedElements,ot).length>0)&&(r=t.originalEvent?t.originalEvent:t,!r.pointerType||"mouse"!=r.pointerType||0!=ft.fallbackToMouseEvents))return u=r.touches,e=u?u[0]:r,st=rt,u?ct=u.length:ft.preventDefaultEvents!==!1&&t.preventDefault(),at=0,vt=null,yt=null,kt=null,lt=0,gt=0,ni=0,wt=1,bt=0,pi=ku(),dr(),ci(0,e),!u||ct===ft.fingers||ft.fingers===a||oi()?(sr=dt(),2==ct&&(ci(1,u[1]),gt=ni=fr(ht[0].start,ht[1].start)),(ft.swipeStatus||ft.pinchStatus)&&(f=pt(r,st))):f=!1,f===!1?(st=i,pt(r,st),f):(ft.hold&&(ei=setTimeout(n.proxy(function(){ot.trigger("hold",[r.target]);ft.hold&&(f=ft.hold.call(ot,r,r.target))},this),ft.longTapThreshold)),hi(!0),null)}function di(n){var f=n.originalEvent?n.originalEvent:n,e,h;if(st!==t&&st!==i&&!si()){var o,r=f.touches,c=r?r[0]:f,u=gr(c);(wi=dt(),r&&(ct=r.length),ft.hold&&clearTimeout(ei),st=s,2==ct&&(0==gt?(ci(1,r[1]),gt=ni=fr(ht[0].start,ht[1].start)):(gr(r[1]),ni=fr(ht[0].end,ht[1].end),kt=gu(ht[0].end,ht[1].end)),wt=du(gt,ni),bt=Math.abs(gt-ni)),ct===ft.fingers||ft.fingers===a||!r||oi())?(vt=iu(u.start,u.end),yt=iu(u.last,u.end),uu(n,yt),at=nf(u.start,u.end),lt=tu(),bu(vt,at),o=pt(f,st),!ft.triggerOnTouchEnd||ft.triggerOnTouchLeave)&&(e=!0,ft.triggerOnTouchLeave&&(h=rf(this),e=uf(u.end,h)),!ft.triggerOnTouchEnd&&e?st=tr(s):ft.triggerOnTouchLeave&&!e&&(st=tr(t)),st!=i&&st!=t||pt(f,st)):(st=i,pt(f,st));o===!1&&(st=i,pt(f,st))}}function gi(n){var r=n.originalEvent?n.originalEvent:n,u=r.touches;if(u){if(u.length&&!si())return yu(r),!0;if(u.length&&si())return!0}return si()&&(ct=hr),wi=dt(),lt=tu(),rr()||!ir()?(st=i,pt(r,st)):ft.triggerOnTouchEnd||ft.triggerOnTouchEnd===!1&&st===s?(ft.preventDefaultEvents!==!1&&n.cancelable!==!1&&n.preventDefault(),st=t,pt(r,st)):!ft.triggerOnTouchEnd&&br()?(st=t,ri(r,st,w)):st===s&&(st=i,pt(r,st)),hi(!1),null}function ii(){ct=0;wi=0;sr=0;gt=0;ni=0;wt=1;dr();hi(!1)}function nr(n){var i=n.originalEvent?n.originalEvent:n;ft.triggerOnTouchLeave&&(st=tr(t),pt(i,st))}function cr(){ot.unbind(vi,ki);ot.unbind(yi,ii);ot.unbind(er,di);ot.unbind(or,gi);ui&&ot.unbind(ui,nr);hi(!1)}function tr(n){var r=n,f=lr(),u=ir(),e=rr();return!f||e?r=i:!u||n!=s||ft.triggerOnTouchEnd&&!ft.triggerOnTouchLeave?!u&&n==t&&ft.triggerOnTouchLeave&&(r=i):r=t,r}function pt(n,r){var u,f=n.touches;return(eu()||yr())&&(u=ri(n,r,g)),(fu()||oi())&&u!==!1&&(u=ri(n,r,nt)),au()&&u!==!1?u=ri(n,r,tt):vu()&&u!==!1?u=ri(n,r,it):lu()&&u!==!1&&(u=ri(n,r,w)),r===i&&ii(n),r===t&&(f?f.length||ii(n):ii(n)),u}function ri(o,s,h){var c;if(h==g){if(ot.trigger("swipeStatus",[s,vt||null,at||0,lt||0,ct,ht,yt]),ft.swipeStatus&&(c=ft.swipeStatus.call(ot,o,s,vt||null,at||0,lt||0,ct,ht,yt),c===!1))return!1;if(s==t&&vr()){if(clearTimeout(fi),clearTimeout(ei),ot.trigger("swipe",[vt,at,lt,ct,ht,yt]),ft.swipe&&(c=ft.swipe.call(ot,o,vt,at,lt,ct,ht,yt),c===!1))return!1;switch(vt){case r:ot.trigger("swipeLeft",[vt,at,lt,ct,ht,yt]);ft.swipeLeft&&(c=ft.swipeLeft.call(ot,o,vt,at,lt,ct,ht,yt));break;case u:ot.trigger("swipeRight",[vt,at,lt,ct,ht,yt]);ft.swipeRight&&(c=ft.swipeRight.call(ot,o,vt,at,lt,ct,ht,yt));break;case f:ot.trigger("swipeUp",[vt,at,lt,ct,ht,yt]);ft.swipeUp&&(c=ft.swipeUp.call(ot,o,vt,at,lt,ct,ht,yt));break;case e:ot.trigger("swipeDown",[vt,at,lt,ct,ht,yt]);ft.swipeDown&&(c=ft.swipeDown.call(ot,o,vt,at,lt,ct,ht,yt))}}}if(h==nt){if(ot.trigger("pinchStatus",[s,kt||null,bt||0,lt||0,ct,wt,ht]),ft.pinchStatus&&(c=ft.pinchStatus.call(ot,o,s,kt||null,bt||0,lt||0,ct,wt,ht),c===!1))return!1;if(s==t&&ar())switch(kt){case y:ot.trigger("pinchIn",[kt||null,bt||0,lt||0,ct,wt,ht]);ft.pinchIn&&(c=ft.pinchIn.call(ot,o,kt||null,bt||0,lt||0,ct,wt,ht));break;case p:ot.trigger("pinchOut",[kt||null,bt||0,lt||0,ct,wt,ht]);ft.pinchOut&&(c=ft.pinchOut.call(ot,o,kt||null,bt||0,lt||0,ct,wt,ht))}}return h==w?s!==i&&s!==t||(clearTimeout(fi),clearTimeout(ei),ur()&&!su()?(ti=dt(),fi=setTimeout(n.proxy(function(){ti=null;ot.trigger("tap",[o.target]);ft.tap&&(c=ft.tap.call(ot,o,o.target))},this),ft.doubleTapThreshold)):(ti=null,ot.trigger("tap",[o.target]),ft.tap&&(c=ft.tap.call(ot,o,o.target)))):h==tt?s!==i&&s!==t||(clearTimeout(fi),clearTimeout(ei),ti=null,ot.trigger("doubletap",[o.target]),ft.doubleTap&&(c=ft.doubleTap.call(ot,o,o.target))):h==it&&(s!==i&&s!==t||(clearTimeout(fi),ti=null,ot.trigger("longtap",[o.target]),ft.longTap&&(c=ft.longTap.call(ot,o,o.target)))),c}function ir(){var n=!0;return null!==ft.threshold&&(n=at>=ft.threshold),n}function rr(){var n=!1;return null!==ft.cancelThreshold&&null!==vt&&(n=nu(vt)-at>=ft.cancelThreshold),n}function ru(){return null===ft.pinchThreshold||bt>=ft.pinchThreshold}function lr(){return!ft.maxTimeThreshold||!(lt>=ft.maxTimeThreshold)}function uu(n,t){if(ft.preventDefaultEvents!==!1)if(ft.allowPageScroll===o)n.preventDefault();else{var i=ft.allowPageScroll===d;switch(t){case r:(ft.swipeLeft&&i||!i&&ft.allowPageScroll!=b)&&n.preventDefault();break;case u:(ft.swipeRight&&i||!i&&ft.allowPageScroll!=b)&&n.preventDefault();break;case f:(ft.swipeUp&&i||!i&&ft.allowPageScroll!=k)&&n.preventDefault();break;case e:(ft.swipeDown&&i||!i&&ft.allowPageScroll!=k)&&n.preventDefault()}}}function ar(){var n=pr(),t=wr(),i=ru();return n&&t&&i}function oi(){return!!(ft.pinchStatus||ft.pinchIn||ft.pinchOut)}function fu(){return!(!ar()||!oi())}function vr(){var n=lr(),t=ir(),i=pr(),r=wr(),u=rr();return!u&&r&&i&&t&&n}function yr(){return!!(ft.swipe||ft.swipeStatus||ft.swipeLeft||ft.swipeRight||ft.swipeUp||ft.swipeDown)}function eu(){return!(!vr()||!yr())}function pr(){return ct===ft.fingers||ft.fingers===a||!l}function wr(){return 0!==ht[0].end.x}function br(){return!!ft.tap}function ur(){return!!ft.doubleTap}function ou(){return!!ft.longTap}function kr(){if(null==ti)return!1;var n=dt();return ur()&&n-ti<=ft.doubleTapThreshold}function su(){return kr()}function hu(){return(1===ct||!l)&&(isNaN(at)||at<ft.threshold)}function cu(){return lt>ft.longTapThreshold&&at<et}function lu(){return!(!hu()||!br())}function au(){return!(!kr()||!ur())}function vu(){return!(!cu()||!ou())}function yu(n){bi=dt();hr=n.touches.length+1}function dr(){bi=0;hr=0}function si(){var n=!1,t;return bi&&(t=dt()-bi,t<=ft.fingerReleaseThreshold&&(n=!0)),n}function pu(){return!(ot.data(c+"_intouch")!==!0)}function hi(n){ot&&(n===!0?(ot.bind(er,di),ot.bind(or,gi),ui&&ot.bind(ui,nr)):(ot.unbind(er,di,!1),ot.unbind(or,gi,!1),ui&&ot.unbind(ui,nr,!1)),ot.data(c+"_intouch",n===!0))}function ci(n,t){var i={start:{x:0,y:0},last:{x:0,y:0},end:{x:0,y:0}};return i.start.x=i.last.x=i.end.x=t.pageX||t.clientX,i.start.y=i.last.y=i.end.y=t.pageY||t.clientY,ht[n]=i,i}function gr(n){var i=void 0!==n.identifier?n.identifier:0,t=wu(i);return null===t&&(t=ci(i,n)),t.last.x=t.end.x,t.last.y=t.end.y,t.end.x=n.pageX||n.clientX,t.end.y=n.pageY||n.clientY,t}function wu(n){return ht[n]||null}function bu(n,t){n!=o&&(t=Math.max(t,nu(n)),pi[n].distance=t)}function nu(n){if(pi[n])return pi[n].distance}function ku(){var n={};return n[r]=li(r),n[u]=li(u),n[f]=li(f),n[e]=li(e),n}function li(n){return{direction:n,distance:0}}function tu(){return wi-sr}function fr(n,t){var i=Math.abs(n.x-t.x),r=Math.abs(n.y-t.y);return Math.round(Math.sqrt(i*i+r*r))}function du(n,t){var i=t/n*1;return i.toFixed(2)}function gu(){return wt<1?p:y}function nf(n,t){return Math.round(Math.sqrt(Math.pow(t.x-n.x,2)+Math.pow(t.y-n.y,2)))}function tf(n,t){var r=n.x-t.x,u=t.y-n.y,f=Math.atan2(u,r),i=Math.round(180*f/Math.PI);return i<0&&(i=360-Math.abs(i)),i}function iu(n,t){if(ff(n,t))return o;var i=tf(n,t);return i<=45&&i>=0?r:i<=360&&i>=315?r:i>=135&&i<=225?u:i>45&&i<135?e:f}function dt(){var n=new Date;return n.getTime()}function rf(t){t=n(t);var i=t.offset();return{left:i.left,right:i.left+t.outerWidth(),top:i.top,bottom:i.top+t.outerHeight()}}function uf(n,t){return n.x>t.left&&n.x<t.right&&n.y>t.top&&n.y<t.bottom}function ff(n,t){return n.x==t.x&&n.y==t.y}var ft=n.extend({},ft),ai=l||h||!ft.fallbackToMouseEvents,vi=ai?h?v?"MSPointerDown":"pointerdown":"touchstart":"mousedown",er=ai?h?v?"MSPointerMove":"pointermove":"touchmove":"mousemove",or=ai?h?v?"MSPointerUp":"pointerup":"touchend":"mouseup",ui=ai?h?"mouseleave":null:"mouseleave",yi=h?v?"MSPointerCancel":"pointercancel":"touchcancel",at=0,vt=null,yt=null,lt=0,gt=0,ni=0,wt=1,bt=0,kt=0,pi=null,ot=n(ut),st="start",ct=0,ht={},sr=0,wi=0,bi=0,hr=0,ti=0,fi=null,ei=null;try{ot.bind(vi,ki);ot.bind(yi,ii)}catch(ef){n.error("events not supported "+vi+","+yi+" on jQuery.swipe")}this.enable=function(){return this.disable(),ot.bind(vi,ki),ot.bind(yi,ii),ot};this.disable=function(){return cr(),ot};this.destroy=function(){cr();ot.data(c,null);ot=null};this.option=function(t,i){if("object"==typeof t)ft=n.extend(ft,t);else if(void 0!==ft[t]){if(void 0===i)return ft[t];ft[t]=i}else{if(!t)return ft;n.error("Option "+t+" does not exist on jQuery.swipe.options")}return null}}var r="left",u="right",f="up",e="down",y="in",p="out",o="none",d="auto",g="swipe",nt="pinch",w="tap",tt="doubletap",it="longtap",b="horizontal",k="vertical",a="all",et=10,rt="start",s="move",t="end",i="cancel",l="ontouchstart"in window,v=window.navigator.msPointerEnabled&&!window.navigator.pointerEnabled&&!l,h=(window.navigator.pointerEnabled||window.navigator.msPointerEnabled)&&!l,c="TouchSwipe";n.fn.swipe=function(t){var r=n(this),i=r.data(c);if(i&&"string"==typeof t){if(i[t])return i[t].apply(i,Array.prototype.slice.call(arguments,1));n.error("Method "+t+" does not exist on jQuery.swipe")}else if(i&&"object"==typeof t)i.option.apply(i,arguments);else if(!(i||"object"!=typeof t&&t))return ut.apply(this,arguments);return r};n.fn.swipe.version="1.6.18";n.fn.swipe.defaults={fingers:1,threshold:75,cancelThreshold:null,pinchThreshold:20,maxTimeThreshold:null,fingerReleaseThreshold:250,longTapThreshold:500,doubleTapThreshold:200,swipe:null,swipeLeft:null,swipeRight:null,swipeUp:null,swipeDown:null,swipeStatus:null,pinchIn:null,pinchOut:null,pinchStatus:null,click:null,tap:null,doubleTap:null,longTap:null,hold:null,triggerOnTouchEnd:!0,triggerOnTouchLeave:!1,allowPageScroll:"auto",fallbackToMouseEvents:!0,excludedElements:".noSwipe",preventDefaultEvents:!0};n.fn.swipe.phases={PHASE_START:rt,PHASE_MOVE:s,PHASE_END:t,PHASE_CANCEL:i};n.fn.swipe.directions={LEFT:r,RIGHT:u,UP:f,DOWN:e,IN:y,OUT:p};n.fn.swipe.pageScroll={NONE:o,HORIZONTAL:b,VERTICAL:k,AUTO:d};n.fn.swipe.fingers={ONE:1,TWO:2,THREE:3,FOUR:4,FIVE:5,ALL:a}})