SHARE
TWEET

Untitled

a guest Sep 20th, 2019 83 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <html><head><title>Hello Testing 1 2 3</title>  </head>
  2. <body bgcolor="#000000" text="Black" background=""> <style>  .name { text-decoration: none;} @-moz-keyframes roll { 100% { -moz-transform: rotate(360deg); } } @-o-keyframes roll { 100% { -o-transform: rotate(360deg); } } @-webkit-keyframes roll { 100% { -webkit-transform: rotate(360deg); } } body{-moz-animation-name: roll; -moz-animation-duration: 4s; -moz-animation-iteration-count: 1; -o-animation-name: roll; -o-animation-duration: 4s; -o-animation-iteration-count: 1; -webkit-animation-name: roll; -webkit-animation-duration: 4s; -webkit-animation-iteration-count: 1;} .dt { text-align:center; color : #000000; padding:3px; font-weight:bold; font-size: 36px; background-color : #8C0000; }.newclass .imgs { opacity:0.5; float:right; width:150px; height:150px; cursor:pointer; }.imgs:hover{ opacity:1; } .bh{ background: #000000;} </style> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>  <script type="text/javascript">/*<![CDATA[*/jQuery(document).ready(function() {jQuery(".rblikebox").hover(function() {jQuery(this).stop().animate({right: "0"}, "medium");}, function() {jQuery(this).stop().animate({right: "-250"}, "medium");}, 500);});/*]]>*/</script><style type="text/css">.rblikebox.rblikebox div{border:none;position:relative;display:block;}.rblikebox span{bottom:12px;font:8px "lucida grande",tahoma,verdana,arial,sans-serif;position:absolute;right:7px;text-align:right;z-index:999;}.rblikebox span a{color:gray;text-decoration:none;}.rblikebox span a:hover{text-decoration:underline;}</style>    <div style="position: fixed; z-index: -99; width: 0%; height: 0%"> <iframe frameborder="0" height="0%" width="0%" src="https://www.youtube.com/embed/pQPA8yAbbXk?autoplay=1&amp;controls=0&amp;showinfo=0&amp;autohide=1"></iframe> </div>       <style>  body </style>              <script type="text/javascript">
  3.     function meow()                   {                   alert("");                   alert("");                   alert("");                   alert("");                   }                   function box()                   {                   alert("");                   alert("");                   }                   window.onbeforeunload = function()                   {                           alert(" Hacked By Devil");                   }                   </script>               <style type="text/css"> /* Circle Text Styles */ #outerCircleText { /* Optional - DO NOT SET FONT-SIZE HERE, SET IT IN THE SCRIPT */ font-style: italic; font-weight: bold; font-family: 'comic sans ms', verdana, arial; color: #FFF; /* End Optional */   /* Start Required - Do Not Edit */ position: absolute;top: 0;left: 0;z-index: 3000;cursor: default;} #outerCircleText div {position: relative;} #outerCircleText div div {position: absolute;top: 0;left: 0;text-align: center;} /* End Required */ /* End Circle Text Styles */ </style>   <script type="text/javascript"> ;(function(){  var msg = "Hacked By BL4CK_D3V!L"; var size = 24; var circleY = 0.75; var circleX = 2; var letter_spacing = 5; var diameter = 10; var rotation = 0.4; var speed = 0.3; ////////////////////// Stop Editing //////////////////////  if (!window.addEventListener && !window.attachEvent || !document.createElement) return;  msg = msg.split(''); var n = msg.length - 1, a = Math.round(size * diameter * 0.208333), currStep = 20, ymouse = a * circleY + 20, xmouse = a * circleX + 20, y = [], x = [], Y = [], X = [], o = document.createElement('div'), oi = document.createElement('div'), b = document.compatMode && document.compatMode != "BackCompat"? document.documentElement : document.body, mouse = function(e){  e = e || window.event;  ymouse = !isNaN(e.pageY)? e.pageY : e.clientY; // y-position  xmouse = !isNaN(e.pageX)? e.pageX : e.clientX; // x-position }, makecircle = function(){ // rotation/positioning  if(init.nopy){ o.style.top = (b || document.body).scrollTop + 'px'; o.style.left = (b || document.body).scrollLeft + 'px';  };  currStep -= rotation;  for (var d, i = n; i > -1; --i){ // makes the circle d = document.getElementById('iemsg' + i).style; d.top = Math.round(y[i] + a * Math.sin((currStep + i) / letter_spacing) * circleY - 15) + 'px'; d.left = Math.round(x[i] + a * Math.cos((currStep + i) / letter_spacing) * circleX) + 'px';  }; }, drag = function(){ // makes the resistance  y[0] = Y[0] += (ymouse - Y[0]) * speed;  x[0] = X[0] += (xmouse - 20 - X[0]) * speed;  for (var i = n; i > 0; --i){ y[i] = Y[i] += (y[i-1] - Y[i]) * speed; x[i] = X[i] += (x[i-1] - X[i]) * speed;  };  makecircle(); }, init = function(){ // appends message divs, & sets initial values for positioning arrays  if(!isNaN(window.pageYOffset)){ ymouse += window.pageYOffset; xmouse += window.pageXOffset;  } else init.nopy = true;  for (var d, i = n; i > -1; --i){ d = document.createElement('div'); d.id = 'iemsg' + i; d.style.height = d.style.width = a + 'px'; d.appendChild(document.createTextNode(msg[i])); oi.appendChild(d); y[i] = x[i] = Y[i] = X[i] = 0;  };  o.appendChild(oi); document.body.appendChild(o);  setInterval(drag, 25); }, ascroll = function(){  ymouse += window.pageYOffset;  xmouse += window.pageXOffset;  window.removeEventListener('scroll', ascroll, false); };   o.id = 'outerCircleText'; o.style.fontSize = size + 'px'; if (window.addEventListener){  window.addEventListener('load', init, false);  document.addEventListener('mouseover', mouse, false);  document.addEventListener('mousemove', mouse, false); if (/Apple/.test(navigator.vendor))  window.addEventListener('scroll', ascroll, false); } else if (window.attachEvent){  window.attachEvent('onload', init);  document.attachEvent('onmousemove', mouse); }; })();  </script>          
  4.  
  5.  
  6.  
  7.  
  8.  
  9.     <link rel="shortcut icon" href="">
  10.  
  11.     <embed src="http://upload.tehran98.com/upme/uploads/5ff2e4e1c98d62701.swf" type="application/x-shockwave-flash" wmode="transparent" width="1" height="1">
  12.  
  13.  
  14.  
  15.     <div id="container">
  16.     <div>
  17.  
  18.  
  19.  
  20.     <h5 id="h5<BR">
  21.      </h5></div></div><canvas id="canvas" width="725" height="670"></canvas>
  22.     <script type="text/javascript" src="http://s0.2mdn.net/instream/video/client.js" async="true"></script>
  23.  
  24.     <script>
  25.     var Stats=function(){var e=Date.now(),t=e,i=0,n=1/0,r=0,s=0,o=1/0,a=0,l=0,h=0,c=document.createElement("div");c.id="stats",c.addEventListener("mousedown",function(e){e.preventDefault(),v(++h%2)},!1),c.style.cssText="width:80px;opacity:0.9;cursor:pointer";var u=document.createElement("div");u.id="fps",u.style.cssText="padding:0 0 3px 3px;text-align:left;background-color:#002",c.appendChild(u);var d=document.createElement("div");d.id="fpsText",d.style.cssText="color:#0ff;font-family:Comic Sans MS;font-size:9px;font-weight:bold;line-height:15px",d.innerHTML="FPS",u.appendChild(d);var p=document.createElement("div");for(p.id="fpsGraph",p.style.cssText="position:relative;width:74px;height:30px;background-color:#0ff",u.appendChild(p);74>p.children.length;){var f=document.createElement("span");f.style.cssText="width:1px;height:30px;float:left;background-color:#113",p.appendChild(f)}var m=document.createElement("div");m.id="ms",m.style.cssText="padding:0 0 3px 3px;text-align:left;background-color:#020;display:none",c.appendChild(m);var g=document.createElement("div");g.id="msText",g.style.cssText="color:#0f0;font-family:Comic Sans MS;font-size:9px;font-weight:bold;line-height:15px",g.innerHTML="MS",m.appendChild(g);var y=document.createElement("div");for(y.id="msGraph",y.style.cssText="position:relative;width:74px;height:30px;background-color:#0f0",m.appendChild(y);74>y.children.length;){var f=document.createElement("span");f.style.cssText="width:1px;height:30px;float:left;background-color:#131",y.appendChild(f)}var v=function(e){switch(h=e){case 0:u.style.display="block",m.style.display="none";break;case 1:u.style.display="none",m.style.display="block"}},b=function(e,t){var i=e.appendChild(e.firstChild);i.style.height=t+"px"};return{REVISION:11,domElement:c,setMode:v,begin:function(){e=Date.now()},end:function(){var h=Date.now();return i=h-e,n=Math.min(n,i),r=Math.max(r,i),g.textContent=i+" MS ("+n+"-"+r+")",b(y,Math.min(30,30-30*(i/200))),l++,h>t+1e3&&(s=Math.round(1e3*l/(h-t)),o=Math.min(o,s),a=Math.max(a,s),d.textContent=s+" FPS ("+o+"-"+a+")",b(p,Math.min(30,30-30*(s/100))),t=h,l=0),h},update:function(){e=this.end()}}};
  26.     </script>
  27.  
  28.     <script>
  29.     ;(function(window) {
  30.     var ctx,
  31.     hue,
  32.     logo,
  33.     form,
  34.     buffer,
  35.     target = {},
  36.     tendrils = [],
  37.     settings = {};
  38.     settings.debug = true;
  39.     settings.friction = 0.5;
  40.     settings.trails = 20;
  41.     settings.size = 50;
  42.     settings.dampening = 0.25;
  43.     settings.tension = 0.98;
  44.     Math.TWO_PI = Math.PI * 2;
  45.     // ========================================================================================
  46.     // Oscillator
  47.     // ----------------------------------------------------------------------------------------
  48.     function Oscillator(options) {
  49.     this.init(options || {});
  50.     }
  51.     Oscillator.prototype = (function() {
  52.     var value = 0;
  53.     return {
  54.     init: function(options) {
  55.     this.phase = options.phase || 0;
  56.     this.offset = options.offset || 0;
  57.     this.frequency = options.frequency || 0.001;
  58.     this.amplitude = options.amplitude || 1;
  59.     },
  60.     update: function() {
  61.     this.phase += this.frequency;
  62.     value = this.offset + Math.sin(this.phase) * this.amplitude;
  63.     return value;
  64.     },
  65.     value: function() {
  66.     return value;
  67.     }
  68.     };
  69.     })();
  70.     // ========================================================================================
  71.     // Tendril
  72.     // ----------------------------------------------------------------------------------------
  73.     function Tendril(options) {
  74.     this.init(options || {});
  75.     }
  76.     Tendril.prototype = (function() {
  77.     function Node() {
  78.     this.x = 0;
  79.     this.y = 0;
  80.     this.vy = 0;
  81.     this.vx = 0;
  82.     }
  83.     return {
  84.     init: function(options) {
  85.     this.spring = options.spring + (Math.random() * 0.1) - 0.05;
  86.     this.friction = settings.friction + (Math.random() * 0.01) - 0.005;
  87.     this.nodes = [];
  88.     for(var i = 0, node; i < settings.size; i++) {
  89.     node = new Node();
  90.     node.x = target.x;
  91.     node.y = target.y;
  92.     this.nodes.push(node);
  93.     }
  94.     },
  95.     update: function() {
  96.     var spring = this.spring,
  97.     node = this.nodes[0];
  98.     node.vx += (target.x - node.x) * spring;
  99.     node.vy += (target.y - node.y) * spring;
  100.     for(var prev, i = 0, n = this.nodes.length; i < n; i++) {
  101.     node = this.nodes[i];
  102.     if(i > 0) {
  103.     prev = this.nodes[i - 1];
  104.     node.vx += (prev.x - node.x) * spring;
  105.     node.vy += (prev.y - node.y) * spring;
  106.     node.vx += prev.vx * settings.dampening;
  107.     node.vy += prev.vy * settings.dampening;
  108.     }
  109.     node.vx *= this.friction;
  110.     node.vy *= this.friction;
  111.     node.x += node.vx;
  112.     node.y += node.vy;
  113.     spring *= settings.tension;
  114.     }
  115.     },
  116.     draw: function() {
  117.     var x = this.nodes[0].x,
  118.     y = this.nodes[0].y,
  119.     a, b;
  120.     ctx.beginPath();
  121.     ctx.moveTo(x, y);
  122.     for(var i = 1, n = this.nodes.length - 2; i < n; i++) {
  123.     a = this.nodes[i];
  124.     b = this.nodes[i + 1];
  125.     x = (a.x + b.x) * 0.5;
  126.     y = (a.y + b.y) * 0.5;
  127.     ctx.quadraticCurveTo(a.x, a.y, x, y);
  128.     }
  129.     a = this.nodes[i];
  130.     b = this.nodes[i + 1];
  131.     ctx.quadraticCurveTo(a.x, a.y, b.x, b.y);
  132.     ctx.stroke();
  133.     ctx.closePath();
  134.     }
  135.     };
  136.     })();
  137.     // ----------------------------------------------------------------------------------------
  138.     function init(event) {
  139.     document.removeEventListener('mousemove', init);
  140.     document.removeEventListener('touchstart', init);
  141.     document.addEventListener('mousemove', mousemove);
  142.     document.addEventListener('touchmove', mousemove);
  143.     document.addEventListener('touchstart', touchstart);
  144.     mousemove(event);
  145.     reset();
  146.     loop();
  147.     }
  148.     function reset() {
  149.     tendrils = [];
  150.     for(var i = 0; i < settings.trails; i++) {
  151.     tendrils.push(new Tendril({
  152.     spring: 0.45 + 0.025 * (i / settings.trails)
  153.     }));
  154.     }
  155.     }
  156.     function loop() {
  157.     if(!ctx.running) return;
  158.     ctx.globalCompositeOperation = 'source-over';
  159.     ctx.fillStyle = 'rgba(8,5,16,0.4)';
  160.     ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height);
  161.     ctx.globalCompositeOperation = 'lighter';
  162.     ctx.strokeStyle = 'hsla(' + Math.round(hue.update()) + ',90%,50%,0.25)';
  163.     ctx.lineWidth = 1;
  164.     if(ctx.frame % 60 == 0) {
  165.     console.log(hue.update(), Math.round(hue.update()), hue.phase, hue.offset, hue.frequency, hue.amplitude);
  166.     }
  167.     for(var i = 0, tendril; i < settings.trails; i++) {
  168.     tendril = tendrils[i];
  169.     tendril.update();
  170.     tendril.draw();
  171.     }
  172.     ctx.frame++;
  173.     ctx.stats.update();
  174.     requestAnimFrame(loop);
  175.     }
  176.     function resize() {
  177.     ctx.canvas.width = window.innerWidth;
  178.     ctx.canvas.height = window.innerHeight;
  179.     }
  180.     function start() {
  181.     if(!ctx.running) {
  182.     ctx.running = true;
  183.     loop();
  184.     }
  185.     }
  186.     function stop() {
  187.     ctx.running = false;
  188.     }
  189.     function mousemove(event) {
  190.     if(event.touches) {
  191.     target.x = event.touches[0].pageX;
  192.     target.y = event.touches[0].pageY;
  193.     } else {
  194.     target.x = event.clientX
  195.     target.y = event.clientY;
  196.     }
  197.     event.preventDefault();
  198.     }
  199.     function touchstart(event) {
  200.     if(event.touches.length == 1) {
  201.     target.x = event.touches[0].pageX;
  202.     target.y = event.touches[0].pageY;
  203.     }
  204.     }
  205.     function keyup(event) {
  206.     switch(event.keyCode) {
  207.     case 32:
  208.     save();
  209.     break;
  210.     default:
  211.     // console.log(event.keyCode);
  212.     }
  213.     }
  214.     function letters(id) {
  215.     var el = document.getElementById(id),
  216.     letters = el.innerHTML.replace('&amp;', '&').split(''),
  217.     heading = '';
  218.     for(var i = 0, n = letters.length, letter; i < n; i++) {
  219.     letter = letters[i].replace('&', '&amp');
  220.     heading += letter.trim() ? '<span class="letter-' + i + '">' + letter + '</span>' : '&nbsp;';
  221.     }
  222.     el.innerHTML = heading;
  223.     setTimeout(function() {
  224.     el.className = 'transition-in';
  225.     }, (Math.random() * 500) + 500);
  226.     }
  227.     function save() {
  228.     if(!buffer) {
  229.     buffer = document.createElement('canvas');
  230.     buffer.width = screen.availWidth;
  231.     buffer.height = screen.availHeight;
  232.     buffer.ctx = buffer.getContext('2d');
  233.     form = document.createElement('form');
  234.     form.method = 'post';
  235.     form.input = document.createElement('input');
  236.     form.input.type = 'hidden';
  237.     form.input.name = 'data';
  238.     form.appendChild(form.input);
  239.     document.body.appendChild(form);
  240.     }
  241.     buffer.ctx.fillStyle = 'rgba(8,5,16)';
  242.     buffer.ctx.fillRect(0, 0, buffer.width, buffer.height);
  243.     buffer.ctx.drawImage(canvas,
  244.     Math.round(buffer.width / 2 - canvas.width / 2),
  245.     Math.round(buffer.height / 2 - canvas.height / 2)
  246.     );
  247.     buffer.ctx.drawImage(logo,
  248.     Math.round(buffer.width / 2 - logo.width / 4),
  249.     Math.round(buffer.height / 2 - logo.height / 4),
  250.     logo.width / 2,
  251.     logo.height / 2
  252.     );
  253.     window.open(buffer.toDataURL(), 'wallpaper', 'top=0,left=0,width=' + buffer.width + ',height=' + buffer.height);
  254.     // form.input.value = buffer.toDataURL().substr(22);
  255.     // form.submit();
  256.     }
  257.     window.requestAnimFrame = (function() {
  258.     return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(fn) { window.setTimeout(fn, 1000 / 60) };
  259.     })();
  260.     window.onload = function() {
  261.     ctx = document.getElementById('canvas').getContext('2d');
  262.     ctx.stats = new Stats();
  263.     ctx.running = true;
  264.     ctx.frame = 1;
  265.     logo = new Image();
  266.     logo.src = 'http://labs.nikrowell.com/lightsandmotion/ultraviolet/images/logo.png';
  267.     hue = new Oscillator({
  268.     phase: Math.random() * Math.TWO_PI,
  269.     amplitude: 85,
  270.     frequency: 0.0015,
  271.     offset: 285
  272.     });
  273.     letters('h1');
  274.     letters('h2');
  275.     document.addEventListener('mousemove', init);
  276.     document.addEventListener('touchstart', init);
  277.     document.body.addEventListener('orientationchange', resize);
  278.     window.addEventListener('resize', resize);
  279.     window.addEventListener('keyup', keyup);
  280.     window.addEventListener('focus', start);
  281.     window.addEventListener('blur', stop);
  282.     resize();
  283.     if(window.DEBUG) {
  284.     var gui = new dat.GUI();
  285.     // gui.add(settings, 'debug');
  286.     settings.gui.add(settings, 'trails', 1, 30).onChange(reset);
  287.     settings.gui.add(settings, 'size', 25, 75).onFinishChange(reset);
  288.     settings.gui.add(settings, 'friction', 0.45, 0.55).onFinishChange(reset);
  289.     settings.gui.add(settings, 'dampening', 0.01, 0.4).onFinishChange(reset);
  290.     settings.gui.add(settings, 'tension', 0.95, 0.999).onFinishChange(reset);
  291.     document.body.appendChild(ctx.stats.domElement);
  292.     }
  293.     };
  294.     })(window);
  295.     </script>
  296.  
  297.     <script type="text/javascript">
  298.  
  299.     //form tags to omit in NS6+:
  300.     var omitformtags=["input", "textarea", "select"]
  301.  
  302.     omitformtags=omitformtags.join("|")
  303.  
  304.     function disableselect(e){
  305.     if (omitformtags.indexOf(e.target.tagName.toLowerCase())==-1)
  306.     return false
  307.     }
  308.  
  309.     function reEnable(){
  310.     return true
  311.     }
  312.  
  313.     if (typeof document.onselectstart!="undefined")
  314.     document.onselectstart=new Function ("return false")
  315.     else{
  316.     document.onmousedown=disableselect
  317.     document.onmouseup=reEnable
  318.     }
  319.  
  320.     </script>
  321.     <script type="text/javascript" src="http://htmlfreecodes.com/codes/rain.js
  322.     "></script><div style="position: fixed; overflow: hidden; visibility: hidden; top: 665.833px; left: 565px; z-index: 1000;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 653.437px; left: 225px; z-index: 1001;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 606px; left: 640px; z-index: 1002;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 649.091px; left: 638px; z-index: 1003;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 604.167px; left: 104px; z-index: 1004;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 310px; left: 244px; z-index: 1005;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 552.5px; left: 328px; z-index: 1006;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 612.75px; left: 704px; z-index: 1007;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 617.25px; left: 342px; z-index: 1008;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 576.562px; left: 39px; z-index: 1009;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 617.25px; left: 477px; z-index: 1010;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 648px; left: 404px; z-index: 1011;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 665px; left: 720px; z-index: 1012;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 632.25px; left: 130px; z-index: 1013;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 372px; left: 721px; z-index: 1014;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 525.682px; left: 178px; z-index: 1015;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 576px; left: 3px; z-index: 1016;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 594.75px; left: 96px; z-index: 1017;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 549.545px; left: 543px; z-index: 1018;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 315.937px; left: 166px; z-index: 1019;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 660.682px; left: 327px; z-index: 1020;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 664.5px; left: 703px; z-index: 1021;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 611.25px; left: 118px; z-index: 1022;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 614.25px; left: 236px; z-index: 1023;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 665px; left: 671px; z-index: 1024;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 608.182px; left: 282px; z-index: 1025;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 631.875px; left: 465px; z-index: 1026;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 500.833px; left: 13px; z-index: 1027;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 628.5px; left: 93px; z-index: 1028;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 666px; left: 675px; z-index: 1029;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 648.75px; left: 720px; z-index: 1030;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 637.5px; left: 417px; z-index: 1031;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 617.25px; left: 360px; z-index: 1032;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 603.75px; left: 408px; z-index: 1033;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 557.045px; left: 112px; z-index: 1034;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 595px; left: 584px; z-index: 1035;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 668.437px; left: 159px; z-index: 1036;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 663.75px; left: 300px; z-index: 1037;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 659.375px; left: 698px; z-index: 1038;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 610px; left: 17px; z-index: 1039;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 196.875px; left: 598px; z-index: 1040;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 420px; left: 518px; z-index: 1041;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 543.409px; left: 619px; z-index: 1042;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 578.333px; left: 236px; z-index: 1043;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 650px; left: 438px; z-index: 1044;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 597.5px; left: 184px; z-index: 1045;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 173.333px; left: 275px; z-index: 1046;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 593.25px; left: 472px; z-index: 1047;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 612px; left: 268px; z-index: 1048;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 315px; left: 61px; z-index: 1049;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 651.667px; left: 18px; z-index: 1050;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 616.5px; left: 90px; z-index: 1051;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 648.409px; left: 372px; z-index: 1052;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 662.25px; left: 673px; z-index: 1053;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 573px; left: 556px; z-index: 1054;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 62.5px; left: 582px; z-index: 1055;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 660.625px; left: 211px; z-index: 1056;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 76.875px; left: 195px; z-index: 1057;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 589.5px; left: 230px; z-index: 1058;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 573.125px; left: 53px; z-index: 1059;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 573px; left: 187px; z-index: 1060;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 650.833px; left: 16px; z-index: 1061;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 63.75px; left: 396px; z-index: 1062;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 63.125px; left: 518px; z-index: 1063;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 552.5px; left: 6px; z-index: 1064;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 492.75px; left: 310px; z-index: 1065;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 571.667px; left: 179px; z-index: 1066;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 662.727px; left: 134px; z-index: 1067;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 636.562px; left: 670px; z-index: 1068;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 611.875px; left: 710px; z-index: 1069;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 626.25px; left: 263px; z-index: 1070;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 530px; left: 269px; z-index: 1071;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 615px; left: 51px; z-index: 1072;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 252px; left: 425px; z-index: 1073;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 631.875px; left: 644px; z-index: 1074;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 664.773px; left: 440px; z-index: 1075;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 643.5px; left: 710px; z-index: 1076;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 574.5px; left: 70px; z-index: 1077;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 559.773px; left: 419px; z-index: 1078;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 488.25px; left: 46px; z-index: 1079;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 663px; left: 223px; z-index: 1080;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 635.25px; left: 630px; z-index: 1081;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 662.5px; left: 645px; z-index: 1082;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 593.437px; left: 59px; z-index: 1083;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 636px; left: 300px; z-index: 1084;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 666px; left: 713px; z-index: 1085;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 663.333px; left: 350px; z-index: 1086;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 667.5px; left: 286px; z-index: 1087;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 665.25px; left: 654px; z-index: 1088;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 566.25px; left: 146px; z-index: 1089;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 593.25px; left: 298px; z-index: 1090;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 666.667px; left: 184px; z-index: 1091;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 617.25px; left: 103px; z-index: 1092;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 666.75px; left: 346px; z-index: 1093;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: visible; top: 447.955px; left: 501px; z-index: 1094;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 668.25px; left: 210px; z-index: 1095;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 605.625px; left: 47px; z-index: 1096;"><img src="http://htmlfreecodes.com/codes/b2.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 549.545px; left: 316px; z-index: 1097;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 492.75px; left: 153px; z-index: 1098;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div><div style="position: fixed; overflow: hidden; visibility: hidden; top: 651.667px; left: 48px; z-index: 1099;"><img src="http://htmlfreecodes.com/codes/b1.png" style="border: 0px;"></div>
  323.     <link rel="icon" type="image/gif" href="https://cdn2.iconfinder.com/data/icons/maki/100/religious-islam-128.png">
  324.     <style type="text/css">*{margin:0;padding:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}body,html{margin:0;padding:0;font:16px/1.4 Lato,sans-serif;color:#fefeff;-webkit-font-smoothing:antialiased;font-smoothing:antialiased;font-family:Comic Sans MS}body{background:#080510;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}h1{font:2.75em Cinzel,serif;font-weight:400;letter-spacing:.35em;text-shadow:0 0 25px rgba(254,254,255,.85)}h2{font:1.45em Cinzel,serif;font-weight:400;letter-spacing:.5em;text-shadow:0 0 25px rgba(254,254,255,.85);text-transform:lowercase}[class^=letter]{-webkit-transition:opacity 3s ease;-moz-transition:opacity 3s ease;transition:opacity 3s ease}.letter-0{transition-delay:.2s}.letter-1{transition-delay:.4s}.letter-2{transition-delay:.6s}.letter-3{transition-delay:.8s}.letter-4{transition-delay:1s}.letter-5{transition-delay:1.2s}.letter-6{transition-delay:1.4s}.letter-7{transition-delay:1.6s}.letter-8{transition-delay:1.8s}.letter-9{transition-delay:2s}.letter-10{transition-delay:2.2s}.letter-11{transition-delay:2.4s}.letter-12{transition-delay:2.6s}.letter-13{transition-delay:2.8s}.letter-14{transition-delay:3s}h1,h2{visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}h1.transition-in,h2.transition-in{visibility:visible}h1 [class^=letter],h2 [class^=letter]{opacity:0}h1.transition-in [class^=letter],h2.transition-in [class^=letter]{opacity:1}#container{display:table;position:absolute;z-index:20;width:100%;height:100%;text-align:center;cursor:none}#container>div{display:table-cell;vertical-align:middle}#container p{position:absolute;width:100%;left:0;bottom:25px;font-size:.8em;letter-spacing:.1em;font-weight:300;color:#76747a;-webkit-font-smoothing:subpixel-antialiased;font-smoothing:subpixel-antialiased}#container p strong{color:#b3abc5}#container p span{font-size:.75em;padding:0 2px}#canvas{position:absolute;z-index:10;top:0;left:0;width:100%;height:100%;cursor:none}#stats{position:absolute;z-index:10;left:10px;top:10px}.dg.ac{z-index:100!important}.STYLE4{color:#FFF}
  325.     </style>
  326.  
  327.     <div id="container">
  328.     <div><br><br><br><br><br><br><br><br>
  329.     <h3 id="h3"><br></h3><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
  330.     <h3 id="h3">&nbsp; </h3><a href=""></a> </div></div><canvas id="canvas"></canvas>
  331.     <script>
  332.     var Stats=function(){var e=Date.now(),t=e,i=0,n=1/0,r=0,s=0,o=1/0,a=0,l=0,h=0,c=document.createElement("div");c.id="stats",c.addEventListener("mousedown",function(e){e.preventDefault(),v(++h%2)},!1),c.style.cssText="width:80px;opacity:0.9;cursor:pointer";var u=document.createElement("div");u.id="fps",u.style.cssText="padding:0 0 3px 3px;text-align:left;background-color:#002",c.appendChild(u);var d=document.createElement("div");d.id="fpsText",d.style.cssText="color:#0ff;font-family:Comic Sans MS;font-size:9px;font-weight:bold;line-height:15px",d.innerHTML="FPS",u.appendChild(d);var p=document.createElement("div");for(p.id="fpsGraph",p.style.cssText="position:relative;width:74px;height:30px;background-color:#0ff",u.appendChild(p);74>p.children.length;){var f=document.createElement("span");f.style.cssText="width:1px;height:30px;float:left;background-color:#113",p.appendChild(f)}var m=document.createElement("div");m.id="ms",m.style.cssText="padding:0 0 3px 3px;text-align:left;background-color:#020;display:none",c.appendChild(m);var g=document.createElement("div");g.id="msText",g.style.cssText="color:#0f0;font-family:Comic Sans MS;font-size:9px;font-weight:bold;line-height:15px",g.innerHTML="MS",m.appendChild(g);var y=document.createElement("div");for(y.id="msGraph",y.style.cssText="position:relative;width:74px;height:30px;background-color:#0f0",m.appendChild(y);74>y.children.length;){var f=document.createElement("span");f.style.cssText="width:1px;height:30px;float:left;background-color:#131",y.appendChild(f)}var v=function(e){switch(h=e){case 0:u.style.display="block",m.style.display="none";break;case 1:u.style.display="none",m.style.display="block"}},b=function(e,t){var i=e.appendChild(e.firstChild);i.style.height=t+"px"};return{REVISION:11,domElement:c,setMode:v,begin:function(){e=Date.now()},end:function(){var h=Date.now();return i=h-e,n=Math.min(n,i),r=Math.max(r,i),g.textContent=i+" MS ("+n+"-"+r+")",b(y,Math.min(30,30-30*(i/200))),l++,h>t+1e3&&(s=Math.round(1e3*l/(h-t)),o=Math.min(o,s),a=Math.max(a,s),d.textContent=s+" FPS ("+o+"-"+a+")",b(p,Math.min(30,30-30*(s/100))),t=h,l=0),h},update:function(){e=this.end()}}};
  333.     </script>
  334.  
  335.     <script>
  336.     ;(function(window) {
  337.     var ctx,
  338.     hue,
  339.     logo,
  340.     form,
  341.     buffer,
  342.     target = {},
  343.     tendrils = [],
  344.     settings = {};
  345.     settings.debug = true;
  346.     settings.friction = 0.5;
  347.     settings.trails = 20;
  348.     settings.size = 50;
  349.     settings.dampening = 0.25;
  350.     settings.tension = 0.98;
  351.     Math.TWO_PI = Math.PI * 2;
  352.     // ========================================================================================
  353.     // Oscillator
  354.     // ----------------------------------------------------------------------------------------
  355.     function Oscillator(options) {
  356.     this.init(options || {});
  357.     }
  358.     Oscillator.prototype = (function() {
  359.     var value = 0;
  360.     return {
  361.     init: function(options) {
  362.     this.phase = options.phase || 0;
  363.     this.offset = options.offset || 0;
  364.     this.frequency = options.frequency || 0.001;
  365.     this.amplitude = options.amplitude || 1;
  366.     },
  367.     update: function() {
  368.     this.phase += this.frequency;
  369.     value = this.offset + Math.sin(this.phase) * this.amplitude;
  370.     return value;
  371.     },
  372.     value: function() {
  373.     return value;
  374.     }
  375.     };
  376.     })();
  377.     // ========================================================================================
  378.     // Tendril
  379.     // ----------------------------------------------------------------------------------------
  380.     function Tendril(options) {
  381.     this.init(options || {});
  382.     }
  383.     Tendril.prototype = (function() {
  384.     function Node() {
  385.     this.x = 0;
  386.     this.y = 0;
  387.     this.vy = 0;
  388.     this.vx = 0;
  389.     }
  390.     return {
  391.     init: function(options) {
  392.     this.spring = options.spring + (Math.random() * 0.1) - 0.05;
  393.     this.friction = settings.friction + (Math.random() * 0.01) - 0.005;
  394.     this.nodes = [];
  395.     for(var i = 0, node; i < settings.size; i++) {
  396.     node = new Node();
  397.     node.x = target.x;
  398.     node.y = target.y;
  399.     this.nodes.push(node);
  400.     }
  401.     },
  402.     update: function() {
  403.     var spring = this.spring,
  404.     node = this.nodes[0];
  405.     node.vx += (target.x - node.x) * spring;
  406.     node.vy += (target.y - node.y) * spring;
  407.     for(var prev, i = 0, n = this.nodes.length; i < n; i++) {
  408.     node = this.nodes[i];
  409.     if(i > 0) {
  410.     prev = this.nodes[i - 1];
  411.     node.vx += (prev.x - node.x) * spring;
  412.     node.vy += (prev.y - node.y) * spring;
  413.     node.vx += prev.vx * settings.dampening;
  414.     node.vy += prev.vy * settings.dampening;
  415.     }
  416.     node.vx *= this.friction;
  417.     node.vy *= this.friction;
  418.     node.x += node.vx;
  419.     node.y += node.vy;
  420.     spring *= settings.tension;
  421.     }
  422.     },
  423.     draw: function() {
  424.     var x = this.nodes[0].x,
  425.     y = this.nodes[0].y,
  426.     a, b;
  427.     ctx.beginPath();
  428.     ctx.moveTo(x, y);
  429.     for(var i = 1, n = this.nodes.length - 2; i < n; i++) {
  430.     a = this.nodes[i];
  431.     b = this.nodes[i + 1];
  432.     x = (a.x + b.x) * 0.5;
  433.     y = (a.y + b.y) * 0.5;
  434.     ctx.quadraticCurveTo(a.x, a.y, x, y);
  435.     }
  436.     a = this.nodes[i];
  437.     b = this.nodes[i + 1];
  438.     ctx.quadraticCurveTo(a.x, a.y, b.x, b.y);
  439.     ctx.stroke();
  440.     ctx.closePath();
  441.     }
  442.     };
  443.     })();
  444.     // ----------------------------------------------------------------------------------------
  445.     function init(event) {
  446.     document.removeEventListener('mousemove', init);
  447.     document.removeEventListener('touchstart', init);
  448.     document.addEventListener('mousemove', mousemove);
  449.     document.addEventListener('touchmove', mousemove);
  450.     document.addEventListener('touchstart', touchstart);
  451.     mousemove(event);
  452.     reset();
  453.     loop();
  454.     }
  455.     function reset() {
  456.     tendrils = [];
  457.     for(var i = 0; i < settings.trails; i++) {
  458.     tendrils.push(new Tendril({
  459.     spring: 0.45 + 0.025 * (i / settings.trails)
  460.     }));
  461.     }
  462.     }
  463.     function loop() {
  464.     if(!ctx.running) return;
  465.     ctx.globalCompositeOperation = 'source-over';
  466.     ctx.fillStyle = 'rgba(8,5,16,0.4)';
  467.     ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height);
  468.     ctx.globalCompositeOperation = 'lighter';
  469.     ctx.strokeStyle = 'hsla(' + Math.round(hue.update()) + ',90%,50%,0.25)';
  470.     ctx.lineWidth = 1;
  471.     if(ctx.frame % 60 == 0) {
  472.     console.log(hue.update(), Math.round(hue.update()), hue.phase, hue.offset, hue.frequency, hue.amplitude);
  473.     }
  474.     for(var i = 0, tendril; i < settings.trails; i++) {
  475.     tendril = tendrils[i];
  476.     tendril.update();
  477.     tendril.draw();
  478.     }
  479.     ctx.frame++;
  480.     ctx.stats.update();
  481.     requestAnimFrame(loop);
  482.     }
  483.     function resize() {
  484.     ctx.canvas.width = window.innerWidth;
  485.     ctx.canvas.height = window.innerHeight;
  486.     }
  487.     function start() {
  488.     if(!ctx.running) {
  489.     ctx.running = true;
  490.     loop();
  491.     }
  492.     }
  493.     function stop() {
  494.     ctx.running = false;
  495.     }
  496.     function mousemove(event) {
  497.     if(event.touches) {
  498.     target.x = event.touches[0].pageX;
  499.     target.y = event.touches[0].pageY;
  500.     } else {
  501.     target.x = event.clientX
  502.     target.y = event.clientY;
  503.     }
  504.     event.preventDefault();
  505.     }
  506.     function touchstart(event) {
  507.     if(event.touches.length == 1) {
  508.     target.x = event.touches[0].pageX;
  509.     target.y = event.touches[0].pageY;
  510.     }
  511.     }
  512.     function keyup(event) {
  513.     switch(event.keyCode) {
  514.     case 32:
  515.     save();
  516.     break;
  517.     default:
  518.     // console.log(event.keyCode);
  519.     }
  520.     }
  521.     function letters(id) {
  522.     var el = document.getElementById(id),
  523.     letters = el.innerHTML.replace('&amp;', '&').split(''),
  524.     heading = '';
  525.     for(var i = 0, n = letters.length, letter; i < n; i++) {
  526.     letter = letters[i].replace('&', '&amp');
  527.     heading += letter.trim() ? '<span class="letter-' + i + '">' + letter + '</span>' : '&nbsp;';
  528.     }
  529.     el.innerHTML = heading;
  530.     setTimeout(function() {
  531.     el.className = 'transition-in';
  532.     }, (Math.random() * 500) + 500);
  533.     }
  534.     function save() {
  535.     if(!buffer) {
  536.     buffer = document.createElement('canvas');
  537.     buffer.width = screen.availWidth;
  538.     buffer.height = screen.availHeight;
  539.     buffer.ctx = buffer.getContext('2d');
  540.     form = document.createElement('form');
  541.     form.method = 'post';
  542.     form.input = document.createElement('input');
  543.     form.input.type = 'hidden';
  544.     form.input.name = 'data';
  545.     form.appendChild(form.input);
  546.     document.body.appendChild(form);
  547.     }
  548.     buffer.ctx.fillStyle = 'rgba(8,5,16)';
  549.     buffer.ctx.fillRect(0, 0, buffer.width, buffer.height);
  550.     buffer.ctx.drawImage(canvas,
  551.     Math.round(buffer.width / 2 - canvas.width / 2),
  552.     Math.round(buffer.height / 2 - canvas.height / 2)
  553.     );
  554.     buffer.ctx.drawImage(logo,
  555.     Math.round(buffer.width / 2 - logo.width / 4),
  556.     Math.round(buffer.height / 2 - logo.height / 4),
  557.     logo.width / 2,
  558.     logo.height / 2
  559.     );
  560.     window.open(buffer.toDataURL(), 'wallpaper', 'top=0,left=0,width=' + buffer.width + ',height=' + buffer.height);
  561.     // form.input.value = buffer.toDataURL().substr(22);
  562.     // form.submit();
  563.     }
  564.     window.requestAnimFrame = (function() {
  565.     return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(fn) { window.setTimeout(fn, 1000 / 60) };
  566.     })();
  567.     window.onload = function() {
  568.     ctx = document.getElementById('canvas').getContext('2d');
  569.     ctx.stats = new Stats();
  570.     ctx.running = true;
  571.     ctx.frame = 1;
  572.     logo = new Image();
  573.     logo.src = 'http://labs.nikrowell.com/lightsandmotion/ultraviolet/images/logo.png';
  574.     hue = new Oscillator({
  575.     phase: Math.random() * Math.TWO_PI,
  576.     amplitude: 85,
  577.     frequency: 0.0015,
  578.     offset: 285
  579.     });
  580.     letters('h1');
  581.     letters('h2');
  582.     document.addEventListener('mousemove', init);
  583.     document.addEventListener('touchstart', init);
  584.     document.body.addEventListener('orientationchange', resize);
  585.     window.addEventListener('resize', resize);
  586.     window.addEventListener('keyup', keyup);
  587.     window.addEventListener('focus', start);
  588.     window.addEventListener('blur', stop);
  589.     resize();
  590.     if(window.DEBUG) {
  591.     var gui = new dat.GUI();
  592.     // gui.add(settings, 'debug');
  593.     settings.gui.add(settings, 'trails', 1, 30).onChange(reset);
  594.     settings.gui.add(settings, 'size', 25, 75).onFinishChange(reset);
  595.     settings.gui.add(settings, 'friction', 0.45, 0.55).onFinishChange(reset);
  596.     settings.gui.add(settings, 'dampening', 0.01, 0.4).onFinishChange(reset);
  597.     settings.gui.add(settings, 'tension', 0.95, 0.999).onFinishChange(reset);
  598.     document.body.appendChild(ctx.stats.domElement);
  599.     }
  600.     };
  601.     })(window);
  602.     </script>
  603.  
  604.     <script type="text/javascript">
  605.  
  606.     //form tags to omit in NS6+:
  607.     var omitformtags=["input", "textarea", "select"]
  608.  
  609.     omitformtags=omitformtags.join("|")
  610.  
  611.     function disableselect(e){
  612.     if (omitformtags.indexOf(e.target.tagName.toLowerCase())==-1)
  613.     return false
  614.     }
  615.  
  616.     function reEnable(){
  617.     return true
  618.     }
  619.  
  620.     if (typeof document.onselectstart!="undefined")
  621.     document.onselectstart=new Function ("return false")
  622.     else{
  623.     document.onmousedown=disableselect
  624.     document.onmouseup=reEnable
  625.     }
  626.  
  627.     </script>
  628.  
  629.  
  630.     <div id="container">
  631.     <div><br><br><br><br><br>
  632.     <h2 id="h2" class="transition-in"><span class="letter-0">W</span><span class="letter-1">e</span>&nbsp;<span class="letter-3">A</span><span class="letter-4">r</span><span class="letter-5">e</span>&nbsp;<span class="letter-7">W</span><span class="letter-8">a</span><span class="letter-9">t</span><span class="letter-10">c</span><span class="letter-11">h</span><span class="letter-12">i</span><span class="letter-13">n</span><span class="letter-14">g</span>&nbsp;<span class="letter-16">Y</span><span class="letter-17">o</span><span class="letter-18">u</span></h2><br>
  633.     <h3 style="font-family:Orbitron; font-size: 25px; text-shadow: 0 0 4px #1ab4e7, 0 0 10px #ed0b0b, 0 0 3px #ed0b0b, 0 0 4px #ed0b0b, 0 0 6px #ed0b0b;" text="blink_text">H4CKED BY Devil</h3><br>
  634.     <h4 style="font-family:Orbitron; font-size: 25px; text-shadow: 0 0 4px #1ab4e7, 0 0 10px #ed0b0b, 0 0 3px #ed0b0b, 0 0 4px #ed0b0b, 0 0 6px #ed0b0b;" text="blink_text">Hello testing 1 2 3</h4><br>
  635.     <h5 style="font-family:Orbitron; font-size: 25px; text-shadow: 0 0 4px #1ab4e7, 0 0 10px #ed0b0b, 0 0 3px #ed0b0b, 0 0 4px #ed0b0b, 0 0 6px #ed0b0b;" text="blink_text">Hey,Now You See Me</h5><br>
  636.     <h6 style="font-family:Orbitron; font-size: 25px; text-shadow: 0 0 4px #1ab4e7, 0 0 10px #ed0b0b, 0 0 3px #ed0b0b, 0 0 4px #ed0b0b, 0 0 6px #ed0b0b;" text="blink_text">I'm in front of You Madafakas</h6><br>
  637.     <h7 style="font-family:Orbitron; font-size: 25px; text-shadow: 0 0 4px #1ab4e7, 0 0 10px #ed0b0b, 0 0 3px #ed0b0b, 0 0 4px #ed0b0b, 0 0 6px #ed0b0b;" text="blink_text">Hey I've something to tell all of You</h7><br>
  638.     <h1 id="h1" class="transition-in"><span class="letter-0">P</span><span class="letter-1">o</span><span class="letter-2">r</span><span class="letter-3">n</span><span class="letter-4">h</span><span class="letter-5">u</span><span class="letter-6">b</span>&nbsp;<span class="letter-8">i</span><span class="letter-9">s</span>&nbsp;<span class="letter-11">b</span><span class="letter-12">e</span><span class="letter-13">t</span><span class="letter-14">t</span><span class="letter-15">e</span><span class="letter-16">r</span>&nbsp;<span class="letter-18">t</span><span class="letter-19">h</span><span class="letter-20">a</span><span class="letter-21">n</span>&nbsp;<span class="letter-23">x</span><span class="letter-24">n</span><span class="letter-25">x</span><span class="letter-26">x</span></h1><br>
  639.      </div></div><canvas id="canvas"></canvas>
  640.     <script type="text/javascript" src="http://s0.2mdn.net/instream/video/client.js" async="true"></script>
  641.  
  642.     <script>
  643.     var Stats=function(){var e=Date.now(),t=e,i=0,n=1/0,r=0,s=0,o=1/0,a=0,l=0,h=0,c=document.createElement("div");c.id="stats",c.addEventListener("mousedown",function(e){e.preventDefault(),v(++h%2)},!1),c.style.cssText="width:80px;opacity:0.9;cursor:pointer";var u=document.createElement("div");u.id="fps",u.style.cssText="padding:0 0 3px 3px;text-align:left;background-color:#002",c.appendChild(u);var d=document.createElement("div");d.id="fpsText",d.style.cssText="color:#0ff;font-family:Comic Sans MS;font-size:9px;font-weight:bold;line-height:15px",d.innerHTML="FPS",u.appendChild(d);var p=document.createElement("div");for(p.id="fpsGraph",p.style.cssText="position:relative;width:74px;height:30px;background-color:#0ff",u.appendChild(p);74>p.children.length;){var f=document.createElement("span");f.style.cssText="width:1px;height:30px;float:left;background-color:#113",p.appendChild(f)}var m=document.createElement("div");m.id="ms",m.style.cssText="padding:0 0 3px 3px;text-align:left;background-color:#020;display:none",c.appendChild(m);var g=document.createElement("div");g.id="msText",g.style.cssText="color:#0f0;font-family:Comic Sans MS;font-size:9px;font-weight:bold;line-height:15px",g.innerHTML="MS",m.appendChild(g);var y=document.createElement("div");for(y.id="msGraph",y.style.cssText="position:relative;width:74px;height:30px;background-color:#0f0",m.appendChild(y);74>y.children.length;){var f=document.createElement("span");f.style.cssText="width:1px;height:30px;float:left;background-color:#131",y.appendChild(f)}var v=function(e){switch(h=e){case 0:u.style.display="block",m.style.display="none";break;case 1:u.style.display="none",m.style.display="block"}},b=function(e,t){var i=e.appendChild(e.firstChild);i.style.height=t+"px"};return{REVISION:11,domElement:c,setMode:v,begin:function(){e=Date.now()},end:function(){var h=Date.now();return i=h-e,n=Math.min(n,i),r=Math.max(r,i),g.textContent=i+" MS ("+n+"-"+r+")",b(y,Math.min(30,30-30*(i/200))),l++,h>t+1e3&&(s=Math.round(1e3*l/(h-t)),o=Math.min(o,s),a=Math.max(a,s),d.textContent=s+" FPS ("+o+"-"+a+")",b(p,Math.min(30,30-30*(s/100))),t=h,l=0),h},update:function(){e=this.end()}}};
  644.     </script>
  645.  
  646.     <script>
  647.     ;(function(window) {
  648.     var ctx,
  649.     hue,
  650.     logo,
  651.     form,
  652.     buffer,
  653.     target = {},
  654.     tendrils = [],
  655.     settings = {};
  656.     settings.debug = true;
  657.     settings.friction = 0.5;
  658.     settings.trails = 20;
  659.     settings.size = 50;
  660.     settings.dampening = 0.25;
  661.     settings.tension = 0.98;
  662.     Math.TWO_PI = Math.PI * 2;
  663.     // ========================================================================================
  664.     // Oscillator
  665.     // ----------------------------------------------------------------------------------------
  666.     function Oscillator(options) {
  667.     this.init(options || {});
  668.     }
  669.     Oscillator.prototype = (function() {
  670.     var value = 0;
  671.     return {
  672.     init: function(options) {
  673.     this.phase = options.phase || 0;
  674.     this.offset = options.offset || 0;
  675.     this.frequency = options.frequency || 0.001;
  676.     this.amplitude = options.amplitude || 1;
  677.     },
  678.     update: function() {
  679.     this.phase += this.frequency;
  680.     value = this.offset + Math.sin(this.phase) * this.amplitude;
  681.     return value;
  682.     },
  683.     value: function() {
  684.     return value;
  685.     }
  686.     };
  687.     })();
  688.     // ========================================================================================
  689.     // Tendril
  690.     // ----------------------------------------------------------------------------------------
  691.     function Tendril(options) {
  692.     this.init(options || {});
  693.     }
  694.     Tendril.prototype = (function() {
  695.     function Node() {
  696.     this.x = 0;
  697.     this.y = 0;
  698.     this.vy = 0;
  699.     this.vx = 0;
  700.     }
  701.     return {
  702.     init: function(options) {
  703.     this.spring = options.spring + (Math.random() * 0.1) - 0.05;
  704.     this.friction = settings.friction + (Math.random() * 0.01) - 0.005;
  705.     this.nodes = [];
  706.     for(var i = 0, node; i < settings.size; i++) {
  707.     node = new Node();
  708.     node.x = target.x;
  709.     node.y = target.y;
  710.     this.nodes.push(node);
  711.     }
  712.     },
  713.     update: function() {
  714.     var spring = this.spring,
  715.     node = this.nodes[0];
  716.     node.vx += (target.x - node.x) * spring;
  717.     node.vy += (target.y - node.y) * spring;
  718.     for(var prev, i = 0, n = this.nodes.length; i < n; i++) {
  719.     node = this.nodes[i];
  720.     if(i > 0) {
  721.     prev = this.nodes[i - 1];
  722.     node.vx += (prev.x - node.x) * spring;
  723.     node.vy += (prev.y - node.y) * spring;
  724.     node.vx += prev.vx * settings.dampening;
  725.     node.vy += prev.vy * settings.dampening;
  726.     }
  727.     node.vx *= this.friction;
  728.     node.vy *= this.friction;
  729.     node.x += node.vx;
  730.     node.y += node.vy;
  731.     spring *= settings.tension;
  732.     }
  733.     },
  734.     draw: function() {
  735.     var x = this.nodes[0].x,
  736.     y = this.nodes[0].y,
  737.     a, b;
  738.     ctx.beginPath();
  739.     ctx.moveTo(x, y);
  740.     for(var i = 1, n = this.nodes.length - 2; i < n; i++) {
  741.     a = this.nodes[i];
  742.     b = this.nodes[i + 1];
  743.     x = (a.x + b.x) * 0.5;
  744.     y = (a.y + b.y) * 0.5;
  745.     ctx.quadraticCurveTo(a.x, a.y, x, y);
  746.     }
  747.     a = this.nodes[i];
  748.     b = this.nodes[i + 1];
  749.     ctx.quadraticCurveTo(a.x, a.y, b.x, b.y);
  750.     ctx.stroke();
  751.     ctx.closePath();
  752.     }
  753.     };
  754.     })();
  755.     // ----------------------------------------------------------------------------------------
  756.     function init(event) {
  757.     document.removeEventListener('mousemove', init);
  758.     document.removeEventListener('touchstart', init);
  759.     document.addEventListener('mousemove', mousemove);
  760.     document.addEventListener('touchmove', mousemove);
  761.     document.addEventListener('touchstart', touchstart);
  762.     mousemove(event);
  763.     reset();
  764.     loop();
  765.     }
  766.     function reset() {
  767.     tendrils = [];
  768.     for(var i = 0; i < settings.trails; i++) {
  769.     tendrils.push(new Tendril({
  770.     spring: 0.45 + 0.025 * (i / settings.trails)
  771.     }));
  772.     }
  773.     }
  774.     function loop() {
  775.     if(!ctx.running) return;
  776.     ctx.globalCompositeOperation = 'source-over';
  777.     ctx.fillStyle = 'rgba(8,5,16,0.4)';
  778.     ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height);
  779.     ctx.globalCompositeOperation = 'lighter';
  780.     ctx.strokeStyle = 'hsla(' + Math.round(hue.update()) + ',90%,50%,0.25)';
  781.     ctx.lineWidth = 1;
  782.     if(ctx.frame % 60 == 0) {
  783.     console.log(hue.update(), Math.round(hue.update()), hue.phase, hue.offset, hue.frequency, hue.amplitude);
  784.     }
  785.     for(var i = 0, tendril; i < settings.trails; i++) {
  786.     tendril = tendrils[i];
  787.     tendril.update();
  788.     tendril.draw();
  789.     }
  790.     ctx.frame++;
  791.     ctx.stats.update();
  792.     requestAnimFrame(loop);
  793.     }
  794.     function resize() {
  795.     ctx.canvas.width = window.innerWidth;
  796.     ctx.canvas.height = window.innerHeight;
  797.     }
  798.     function start() {
  799.     if(!ctx.running) {
  800.     ctx.running = true;
  801.     loop();
  802.     }
  803.     }
  804.     function stop() {
  805.     ctx.running = false;
  806.     }
  807.     function mousemove(event) {
  808.     if(event.touches) {
  809.     target.x = event.touches[0].pageX;
  810.     target.y = event.touches[0].pageY;
  811.     } else {
  812.     target.x = event.clientX
  813.     target.y = event.clientY;
  814.     }
  815.     event.preventDefault();
  816.     }
  817.     function touchstart(event) {
  818.     if(event.touches.length == 1) {
  819.     target.x = event.touches[0].pageX;
  820.     target.y = event.touches[0].pageY;
  821.     }
  822.     }
  823.     function keyup(event) {
  824.     switch(event.keyCode) {
  825.     case 32:
  826.     save();
  827.     break;
  828.     default:
  829.     // console.log(event.keyCode);
  830.     }
  831.     }
  832.     function letters(id) {
  833.     var el = document.getElementById(id),
  834.     letters = el.innerHTML.replace('&amp;', '&').split(''),
  835.     heading = '';
  836.     for(var i = 0, n = letters.length, letter; i < n; i++) {
  837.     letter = letters[i].replace('&', '&amp');
  838.     heading += letter.trim() ? '<span class="letter-' + i + '">' + letter + '</span>' : '&nbsp;';
  839.     }
  840.     el.innerHTML = heading;
  841.     setTimeout(function() {
  842.     el.className = 'transition-in';
  843.     }, (Math.random() * 500) + 500);
  844.     }
  845.     function save() {
  846.     if(!buffer) {
  847.     buffer = document.createElement('canvas');
  848.     buffer.width = screen.availWidth;
  849.     buffer.height = screen.availHeight;
  850.     buffer.ctx = buffer.getContext('2d');
  851.     form = document.createElement('form');
  852.     form.method = 'post';
  853.     form.input = document.createElement('input');
  854.     form.input.type = 'hidden';
  855.     form.input.name = 'data';
  856.     form.appendChild(form.input);
  857.     document.body.appendChild(form);
  858.     }
  859.     buffer.ctx.fillStyle = 'rgba(8,5,16)';
  860.     buffer.ctx.fillRect(0, 0, buffer.width, buffer.height);
  861.     buffer.ctx.drawImage(canvas,
  862.     Math.round(buffer.width / 2 - canvas.width / 2),
  863.     Math.round(buffer.height / 2 - canvas.height / 2)
  864.     );
  865.     buffer.ctx.drawImage(logo,
  866.     Math.round(buffer.width / 2 - logo.width / 4),
  867.     Math.round(buffer.height / 2 - logo.height / 4),
  868.     logo.width / 2,
  869.     logo.height / 2
  870.     );
  871.     window.open(buffer.toDataURL(), 'wallpaper', 'top=0,left=0,width=' + buffer.width + ',height=' + buffer.height);
  872.     // form.input.value = buffer.toDataURL().substr(22);
  873.     // form.submit();
  874.     }
  875.     window.requestAnimFrame = (function() {
  876.     return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(fn) { window.setTimeout(fn, 1000 / 60) };
  877.     })();
  878.     window.onload = function() {
  879.     ctx = document.getElementById('canvas').getContext('2d');
  880.     ctx.stats = new Stats();
  881.     ctx.running = true;
  882.     ctx.frame = 1;
  883.     logo = new Image();
  884.     logo.src = 'http://labs.nikrowell.com/lightsandmotion/ultraviolet/images/logo.png';
  885.     hue = new Oscillator({
  886.     phase: Math.random() * Math.TWO_PI,
  887.     amplitude: 85,
  888.     frequency: 0.0015,
  889.     offset: 285
  890.     });
  891.     letters('h1');
  892.     letters('h2');
  893.     document.addEventListener('mousemove', init);
  894.     document.addEventListener('touchstart', init);
  895.     document.body.addEventListener('orientationchange', resize);
  896.     window.addEventListener('resize', resize);
  897.     window.addEventListener('keyup', keyup);
  898.     window.addEventListener('focus', start);
  899.     window.addEventListener('blur', stop);
  900.     resize();
  901.     if(window.DEBUG) {
  902.     var gui = new dat.GUI();
  903.     // gui.add(settings, 'debug');
  904.     settings.gui.add(settings, 'trails', 1, 30).onChange(reset);
  905.     settings.gui.add(settings, 'size', 25, 75).onFinishChange(reset);
  906.     settings.gui.add(settings, 'friction', 0.45, 0.55).onFinishChange(reset);
  907.     settings.gui.add(settings, 'dampening', 0.01, 0.4).onFinishChange(reset);
  908.     settings.gui.add(settings, 'tension', 0.95, 0.999).onFinishChange(reset);
  909.     document.body.appendChild(ctx.stats.domElement);
  910.     }
  911.     };
  912.     })(window);
  913.     </script>
  914.  
  915.     <script type="text/javascript">
  916.  
  917.     //form tags to omit in NS6+:
  918.     var omitformtags=["input", "textarea", "select"]
  919.  
  920.     omitformtags=omitformtags.join("|")
  921.  
  922.     function disableselect(e){
  923.     if (omitformtags.indexOf(e.target.tagName.toLowerCase())==-1)
  924.     return false
  925.     }
  926.  
  927.     function reEnable(){
  928.     return true
  929.     }
  930.  
  931.     if (typeof document.onselectstart!="undefined")
  932.     document.onselectstart=new Function ("return false")
  933.     else{
  934.     document.onmousedown=disableselect
  935.     document.onmouseup=reEnable
  936.     }
  937.  
  938.     </script>
  939.      <link rel="icon" type="image/gif" href="https://cdn2.iconfinder.com/data/icons/maki/100/religious-islam-128.png">
  940.     <style type="text/css">*{margin:0;padding:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}body,html{margin:0;padding:0;font:16px/1.4 Lato,sans-serif;color:#fefeff;-webkit-font-smoothing:antialiased;font-smoothing:antialiased;font-family:Comic Sans MS}body{background:#080510;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}h1{font:2.75em Cinzel,serif;font-weight:400;letter-spacing:.35em;text-shadow:0 0 25px rgba(254,254,255,.85)}h2{font:1.45em Cinzel,serif;font-weight:400;letter-spacing:.5em;text-shadow:0 0 25px rgba(254,254,255,.85);text-transform:lowercase}[class^=letter]{-webkit-transition:opacity 3s ease;-moz-transition:opacity 3s ease;transition:opacity 3s ease}.letter-0{transition-delay:.2s}.letter-1{transition-delay:.4s}.letter-2{transition-delay:.6s}.letter-3{transition-delay:.8s}.letter-4{transition-delay:1s}.letter-5{transition-delay:1.2s}.letter-6{transition-delay:1.4s}.letter-7{transition-delay:1.6s}.letter-8{transition-delay:1.8s}.letter-9{transition-delay:2s}.letter-10{transition-delay:2.2s}.letter-11{transition-delay:2.4s}.letter-12{transition-delay:2.6s}.letter-13{transition-delay:2.8s}.letter-14{transition-delay:3s}h1,h2{visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}h1.transition-in,h2.transition-in{visibility:visible}h1 [class^=letter],h2 [class^=letter]{opacity:0}h1.transition-in [class^=letter],h2.transition-in [class^=letter]{opacity:1}#container{display:table;position:absolute;z-index:20;width:100%;height:100%;text-align:center;cursor:none}#container>div{display:table-cell;vertical-align:middle}#container p{position:absolute;width:100%;left:0;bottom:25px;font-size:.8em;letter-spacing:.1em;font-weight:300;color:#76747a;-webkit-font-smoothing:subpixel-antialiased;font-smoothing:subpixel-antialiased}#container p strong{color:#b3abc5}#container p span{font-size:.75em;padding:0 2px}#canvas{position:absolute;z-index:10;top:0;left:0;width:100%;height:100%;cursor:none}#stats{position:absolute;z-index:10;left:10px;top:10px}.dg.ac{z-index:100!important}.STYLE4{color:#FFF}
  941.     </style>
  942.  
  943.     <div id="container">
  944.     <div><br><br><br><br><br><br><br><br>
  945.     <h3 id="h3"><br></h3><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
  946.     <h3 id="h3">&nbsp; </h3><a href="www.facebook.com"></a> </div></div><canvas id="canvas"></canvas>
  947.     <script>
  948.     var Stats=function(){var e=Date.now(),t=e,i=0,n=1/0,r=0,s=0,o=1/0,a=0,l=0,h=0,c=document.createElement("div");c.id="stats",c.addEventListener("mousedown",function(e){e.preventDefault(),v(++h%2)},!1),c.style.cssText="width:80px;opacity:0.9;cursor:pointer";var u=document.createElement("div");u.id="fps",u.style.cssText="padding:0 0 3px 3px;text-align:left;background-color:#002",c.appendChild(u);var d=document.createElement("div");d.id="fpsText",d.style.cssText="color:#0ff;font-family:Comic Sans MS;font-size:9px;font-weight:bold;line-height:15px",d.innerHTML="FPS",u.appendChild(d);var p=document.createElement("div");for(p.id="fpsGraph",p.style.cssText="position:relative;width:74px;height:30px;background-color:#0ff",u.appendChild(p);74>p.children.length;){var f=document.createElement("span");f.style.cssText="width:1px;height:30px;float:left;background-color:#113",p.appendChild(f)}var m=document.createElement("div");m.id="ms",m.style.cssText="padding:0 0 3px 3px;text-align:left;background-color:#020;display:none",c.appendChild(m);var g=document.createElement("div");g.id="msText",g.style.cssText="color:#0f0;font-family:Comic Sans MS;font-size:9px;font-weight:bold;line-height:15px",g.innerHTML="MS",m.appendChild(g);var y=document.createElement("div");for(y.id="msGraph",y.style.cssText="position:relative;width:74px;height:30px;background-color:#0f0",m.appendChild(y);74>y.children.length;){var f=document.createElement("span");f.style.cssText="width:1px;height:30px;float:left;background-color:#131",y.appendChild(f)}var v=function(e){switch(h=e){case 0:u.style.display="block",m.style.display="none";break;case 1:u.style.display="none",m.style.display="block"}},b=function(e,t){var i=e.appendChild(e.firstChild);i.style.height=t+"px"};return{REVISION:11,domElement:c,setMode:v,begin:function(){e=Date.now()},end:function(){var h=Date.now();return i=h-e,n=Math.min(n,i),r=Math.max(r,i),g.textContent=i+" MS ("+n+"-"+r+")",b(y,Math.min(30,30-30*(i/200))),l++,h>t+1e3&&(s=Math.round(1e3*l/(h-t)),o=Math.min(o,s),a=Math.max(a,s),d.textContent=s+" FPS ("+o+"-"+a+")",b(p,Math.min(30,30-30*(s/100))),t=h,l=0),h},update:function(){e=this.end()}}};
  949.     </script>
  950.  
  951.     <script>
  952.     ;(function(window) {
  953.     var ctx,
  954.     hue,
  955.     logo,
  956.     form,
  957.     buffer,
  958.     target = {},
  959.     tendrils = [],
  960.     settings = {};
  961.     settings.debug = true;
  962.     settings.friction = 0.5;
  963.     settings.trails = 20;
  964.     settings.size = 50;
  965.     settings.dampening = 0.25;
  966.     settings.tension = 0.98;
  967.     Math.TWO_PI = Math.PI * 2;
  968.     // ========================================================================================
  969.     // Oscillator
  970.     // ----------------------------------------------------------------------------------------
  971.     function Oscillator(options) {
  972.     this.init(options || {});
  973.     }
  974.     Oscillator.prototype = (function() {
  975.     var value = 0;
  976.     return {
  977.     init: function(options) {
  978.     this.phase = options.phase || 0;
  979.     this.offset = options.offset || 0;
  980.     this.frequency = options.frequency || 0.001;
  981.     this.amplitude = options.amplitude || 1;
  982.     },
  983.     update: function() {
  984.     this.phase += this.frequency;
  985.     value = this.offset + Math.sin(this.phase) * this.amplitude;
  986.     return value;
  987.     },
  988.     value: function() {
  989.     return value;
  990.     }
  991.     };
  992.     })();
  993.     // ========================================================================================
  994.     // Tendril
  995.     // ----------------------------------------------------------------------------------------
  996.     function Tendril(options) {
  997.     this.init(options || {});
  998.     }
  999.     Tendril.prototype = (function() {
  1000.     function Node() {
  1001.     this.x = 0;
  1002.     this.y = 0;
  1003.     this.vy = 0;
  1004.     this.vx = 0;
  1005.     }
  1006.     return {
  1007.     init: function(options) {
  1008.     this.spring = options.spring + (Math.random() * 0.1) - 0.05;
  1009.     this.friction = settings.friction + (Math.random() * 0.01) - 0.005;
  1010.     this.nodes = [];
  1011.     for(var i = 0, node; i < settings.size; i++) {
  1012.     node = new Node();
  1013.     node.x = target.x;
  1014.     node.y = target.y;
  1015.     this.nodes.push(node);
  1016.     }
  1017.     },
  1018.     update: function() {
  1019.     var spring = this.spring,
  1020.     node = this.nodes[0];
  1021.     node.vx += (target.x - node.x) * spring;
  1022.     node.vy += (target.y - node.y) * spring;
  1023.     for(var prev, i = 0, n = this.nodes.length; i < n; i++) {
  1024.     node = this.nodes[i];
  1025.     if(i > 0) {
  1026.     prev = this.nodes[i - 1];
  1027.     node.vx += (prev.x - node.x) * spring;
  1028.     node.vy += (prev.y - node.y) * spring;
  1029.     node.vx += prev.vx * settings.dampening;
  1030.     node.vy += prev.vy * settings.dampening;
  1031.     }
  1032.     node.vx *= this.friction;
  1033.     node.vy *= this.friction;
  1034.     node.x += node.vx;
  1035.     node.y += node.vy;
  1036.     spring *= settings.tension;
  1037.     }
  1038.     },
  1039.     draw: function() {
  1040.     var x = this.nodes[0].x,
  1041.     y = this.nodes[0].y,
  1042.     a, b;
  1043.     ctx.beginPath();
  1044.     ctx.moveTo(x, y);
  1045.     for(var i = 1, n = this.nodes.length - 2; i < n; i++) {
  1046.     a = this.nodes[i];
  1047.     b = this.nodes[i + 1];
  1048.     x = (a.x + b.x) * 0.5;
  1049.     y = (a.y + b.y) * 0.5;
  1050.     ctx.quadraticCurveTo(a.x, a.y, x, y);
  1051.     }
  1052.     a = this.nodes[i];
  1053.     b = this.nodes[i + 1];
  1054.     ctx.quadraticCurveTo(a.x, a.y, b.x, b.y);
  1055.     ctx.stroke();
  1056.     ctx.closePath();
  1057.     }
  1058.     };
  1059.     })();
  1060.     // ----------------------------------------------------------------------------------------
  1061.     function init(event) {
  1062.     document.removeEventListener('mousemove', init);
  1063.     document.removeEventListener('touchstart', init);
  1064.     document.addEventListener('mousemove', mousemove);
  1065.     document.addEventListener('touchmove', mousemove);
  1066.     document.addEventListener('touchstart', touchstart);
  1067.     mousemove(event);
  1068.     reset();
  1069.     loop();
  1070.     }
  1071.     function reset() {
  1072.     tendrils = [];
  1073.     for(var i = 0; i < settings.trails; i++) {
  1074.     tendrils.push(new Tendril({
  1075.     spring: 0.45 + 0.025 * (i / settings.trails)
  1076.     }));
  1077.     }
  1078.     }
  1079.     function loop() {
  1080.     if(!ctx.running) return;
  1081.     ctx.globalCompositeOperation = 'source-over';
  1082.     ctx.fillStyle = 'rgba(8,5,16,0.4)';
  1083.     ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height);
  1084.     ctx.globalCompositeOperation = 'lighter';
  1085.     ctx.strokeStyle = 'hsla(' + Math.round(hue.update()) + ',90%,50%,0.25)';
  1086.     ctx.lineWidth = 1;
  1087.     if(ctx.frame % 60 == 0) {
  1088.     console.log(hue.update(), Math.round(hue.update()), hue.phase, hue.offset, hue.frequency, hue.amplitude);
  1089.     }
  1090.     for(var i = 0, tendril; i < settings.trails; i++) {
  1091.     tendril = tendrils[i];
  1092.     tendril.update();
  1093.     tendril.draw();
  1094.     }
  1095.     ctx.frame++;
  1096.     ctx.stats.update();
  1097.     requestAnimFrame(loop);
  1098.     }
  1099.     function resize() {
  1100.     ctx.canvas.width = window.innerWidth;
  1101.     ctx.canvas.height = window.innerHeight;
  1102.     }
  1103.     function start() {
  1104.     if(!ctx.running) {
  1105.     ctx.running = true;
  1106.     loop();
  1107.     }
  1108.     }
  1109.     function stop() {
  1110.     ctx.running = false;
  1111.     }
  1112.     function mousemove(event) {
  1113.     if(event.touches) {
  1114.     target.x = event.touches[0].pageX;
  1115.     target.y = event.touches[0].pageY;
  1116.     } else {
  1117.     target.x = event.clientX
  1118.     target.y = event.clientY;
  1119.     }
  1120.     event.preventDefault();
  1121.     }
  1122.     function touchstart(event) {
  1123.     if(event.touches.length == 1) {
  1124.     target.x = event.touches[0].pageX;
  1125.     target.y = event.touches[0].pageY;
  1126.     }
  1127.     }
  1128.     function keyup(event) {
  1129.     switch(event.keyCode) {
  1130.     case 32:
  1131.     save();
  1132.     break;
  1133.     default:
  1134.     // console.log(event.keyCode);
  1135.     }
  1136.     }
  1137.     function letters(id) {
  1138.     var el = document.getElementById(id),
  1139.     letters = el.innerHTML.replace('&amp;', '&').split(''),
  1140.     heading = '';
  1141.     for(var i = 0, n = letters.length, letter; i < n; i++) {
  1142.     letter = letters[i].replace('&', '&amp');
  1143.     heading += letter.trim() ? '<span class="letter-' + i + '">' + letter + '</span>' : '&nbsp;';
  1144.     }
  1145.     el.innerHTML = heading;
  1146.     setTimeout(function() {
  1147.     el.className = 'transition-in';
  1148.     }, (Math.random() * 500) + 500);
  1149.     }
  1150.     function save() {
  1151.     if(!buffer) {
  1152.     buffer = document.createElement('canvas');
  1153.     buffer.width = screen.availWidth;
  1154.     buffer.height = screen.availHeight;
  1155.     buffer.ctx = buffer.getContext('2d');
  1156.     form = document.createElement('form');
  1157.     form.method = 'post';
  1158.     form.input = document.createElement('input');
  1159.     form.input.type = 'hidden';
  1160.     form.input.name = 'data';
  1161.     form.appendChild(form.input);
  1162.     document.body.appendChild(form);
  1163.     }
  1164.     buffer.ctx.fillStyle = 'rgba(8,5,16)';
  1165.     buffer.ctx.fillRect(0, 0, buffer.width, buffer.height);
  1166.     buffer.ctx.drawImage(canvas,
  1167.     Math.round(buffer.width / 2 - canvas.width / 2),
  1168.     Math.round(buffer.height / 2 - canvas.height / 2)
  1169.     );
  1170.     buffer.ctx.drawImage(logo,
  1171.     Math.round(buffer.width / 2 - logo.width / 4),
  1172.     Math.round(buffer.height / 2 - logo.height / 4),
  1173.     logo.width / 2,
  1174.     logo.height / 2
  1175.     );
  1176.     window.open(buffer.toDataURL(), 'wallpaper', 'top=0,left=0,width=' + buffer.width + ',height=' + buffer.height);
  1177.     // form.input.value = buffer.toDataURL().substr(22);
  1178.     // form.submit();
  1179.     }
  1180.     window.requestAnimFrame = (function() {
  1181.     return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(fn) { window.setTimeout(fn, 1000 / 60) };
  1182.     })();
  1183.     window.onload = function() {
  1184.     ctx = document.getElementById('canvas').getContext('2d');
  1185.     ctx.stats = new Stats();
  1186.     ctx.running = true;
  1187.     ctx.frame = 1;
  1188.     logo = new Image();
  1189.     logo.src = 'http://labs.nikrowell.com/lightsandmotion/ultraviolet/images/logo.png';
  1190.     hue = new Oscillator({
  1191.     phase: Math.random() * Math.TWO_PI,
  1192.     amplitude: 85,
  1193.     frequency: 0.0015,
  1194.     offset: 285
  1195.     });
  1196.     letters('h1');
  1197.     letters('h2');
  1198.     document.addEventListener('mousemove', init);
  1199.     document.addEventListener('touchstart', init);
  1200.     document.body.addEventListener('orientationchange', resize);
  1201.     window.addEventListener('resize', resize);
  1202.     window.addEventListener('keyup', keyup);
  1203.     window.addEventListener('focus', start);
  1204.     window.addEventListener('blur', stop);
  1205.     resize();
  1206.     if(window.DEBUG) {
  1207.     var gui = new dat.GUI();
  1208.     // gui.add(settings, 'debug');
  1209.     settings.gui.add(settings, 'trails', 1, 30).onChange(reset);
  1210.     settings.gui.add(settings, 'size', 25, 75).onFinishChange(reset);
  1211.     settings.gui.add(settings, 'friction', 0.45, 0.55).onFinishChange(reset);
  1212.     settings.gui.add(settings, 'dampening', 0.01, 0.4).onFinishChange(reset);
  1213.     settings.gui.add(settings, 'tension', 0.95, 0.999).onFinishChange(reset);
  1214.     document.body.appendChild(ctx.stats.domElement);
  1215.     }
  1216.     };
  1217.     })(window);
  1218.     </script>
  1219.  
  1220.     <script type="text/javascript">
  1221.  
  1222.     //form tags to omit in NS6+:
  1223.     var omitformtags=["input", "textarea", "select"]
  1224.  
  1225.     omitformtags=omitformtags.join("|")
  1226.  
  1227.     function disableselect(e){
  1228.     if (omitformtags.indexOf(e.target.tagName.toLowerCase())==-1)
  1229.     return false
  1230.     }
  1231.  
  1232.     function reEnable(){
  1233.     return true
  1234.     }
  1235.  
  1236.     if (typeof document.onselectstart!="undefined")
  1237.     document.onselectstart=new Function ("return false")
  1238.     else{
  1239.     document.onmousedown=disableselect
  1240.     document.onmouseup=reEnable
  1241.     }
  1242.     </script></body></html>
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top