|
|
Line 25: |
Line 25: |
| if ((previous != id_name)) { //if you click a diff image | | if ((previous != id_name)) { //if you click a diff image |
| var id_previous = document.getElementById(previous); | | var id_previous = document.getElementById(previous); |
− | $(id_previous).hide(); | + | $(id_previous).removeClass('unhidden'); |
| + | $(id_previous).addClass('hidden'); |
| + | //$(id_previous).toggleClass('hidden'); |
| //console.log(id_previous); | | //console.log(id_previous); |
| } | | } |
| else if (previous == id_name) { //clicking on the same image | | else if (previous == id_name) { //clicking on the same image |
− | $(id_toggle).show(); | + | $(id_previous).removeClass('hidden'); |
| + | $(id_previous).addClass('unhidden'); |
| + | //$(id_toggle).toggleClass('unhidden'); |
| } | | } |
− | $(id_toggle).show(); //show bio | + | $(id_toggle).removeClass('hidden'); |
| + | $(id_toggle).addClass('unhidden'); |
| + | //$(id_toggle).toggleClass('unhidden'); //show bio |
| previous = id_name; //checks to see if you clicked different images | | previous = id_name; //checks to see if you clicked different images |
| } | | } |
| else { | | else { |
− | $(previous).show(); | + | $(previous).toggleClass('unhidden'); |
| } | | } |
| }); | | }); |
Line 165: |
Line 171: |
| $(function(){$(".scroll").click(function(){$("html,body").animate({scrollTop:$("#top").offset().top},"1000");return false})}); | | $(function(){$(".scroll").click(function(){$("html,body").animate({scrollTop:$("#top").offset().top},"1000");return false})}); |
| | | |
− | //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFqYXhsb2Fkcy5qcyIsImZvb3Rlci1oZWFkZXItdGVtcGxhdGUuanMiLCJpbWFnZS1nYWxsZXJ5LmpzIiwibmF2bGluZS5qcyIsInNjcm9sbHNlbnNpdGl2ZS5qcyIsInNtb290aHNjcm9sbGJhci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQ0hBO0FDQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQzVCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUMxRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUNwQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoid2lraS5qcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5cclxuICBcclxuIiwiIiwiJChkb2N1bWVudCkuYWpheFN0b3AoZnVuY3Rpb24gKCkge1xyXG4gICAgJ3VzZSBzdHJpY3QnO1xyXG4gICAgXHJcbiAgICB2YXIgcHJldmlvdXMgPSAnTmdvemknO1xyXG5cclxuICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICcjaW1hZ2VfZ2FsbGVyeScsIGZ1bmN0aW9uKGV2ZW50KSB7XHJcbiAgICAgICAgdmFyIGlkX25hbWUgPSBldmVudC50YXJnZXQuaWQ7XHJcbiAgICAgICAgY29uc29sZS5sb2coaWRfbmFtZSk7XHJcbiAgICAgICAgaWRfbmFtZSA9IGlkX25hbWUucmVwbGFjZSgvWzAtOV0vZywgJycpOyAvL3JlZ2V4IGZvciBhbHBoYWJldHMsIG5vIG51bWJlcnNcclxuICAgICAgICB2YXIgaWRfdG9nZ2xlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWRfbmFtZSk7IC8vZ2V0IElEIG9mIG5hbWVzIHVuZGVyIGNsYXNzICd0ZWFtLWJpbydcclxuXHJcbiAgICAgICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkX25hbWUpICYmIGlkX25hbWUgIT0gXCJpbWFnZV9nYWxsZXJ5XCIpIHsgLy9pZiBJRCBleGlzdHMgYW5kIGFjY291bnRpbmcgZm9yIHdoaXRlIHNwYWNlXHJcbiAgICAgICAgICAgIGlmICgocHJldmlvdXMgIT0gaWRfbmFtZSkpIHsgLy9pZiB5b3UgY2xpY2sgYSBkaWZmIGltYWdlXHJcbiAgICAgICAgICAgICAgICB2YXIgaWRfcHJldmlvdXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwcmV2aW91cyk7XHJcbiAgICAgICAgICAgICAgICAkKGlkX3ByZXZpb3VzKS5oaWRlKCk7XHJcbiAgICAgICAgICAgICAgICAvL2NvbnNvbGUubG9nKGlkX3ByZXZpb3VzKTtcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgZWxzZSBpZiAocHJldmlvdXMgPT0gaWRfbmFtZSkgeyAvL2NsaWNraW5nIG9uIHRoZSBzYW1lIGltYWdlXHJcbiAgICAgICAgICAgICAgICAkKGlkX3RvZ2dsZSkuc2hvdygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICQoaWRfdG9nZ2xlKS5zaG93KCk7IC8vc2hvdyBiaW9cclxuICAgICAgICAgICAgcHJldmlvdXMgPSBpZF9uYW1lOyAvL2NoZWNrcyB0byBzZWUgaWYgeW91IGNsaWNrZWQgZGlmZmVyZW50IGltYWdlc1xyXG4gICAgICAgIH0gXHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICQocHJldmlvdXMpLnNob3coKTtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxufSk7XHJcbiIsIi8vIENvZGUgY291cnRlc3kgb2YgQXRlcyBHb3JhbFxyXG4vLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvMTg3OTQ2XHJcblxyXG52YXIgdXBkYXRldG9jID0gZnVuY3Rpb24oKSB7XHJcbiAgICB2YXIgc21hbGxlc3RvZmZzZXQgPSAtJChkb2N1bWVudCkuaGVpZ2h0KCk7XHJcbiAgICB2YXIgc21hbGxlc3RoZWFkZXI7XHJcblxyXG4gICAgJCgnYXJ0aWNsZSBoMScpLmVhY2goZnVuY3Rpb24oaSkgeyBcclxuICAgICAgICB2YXIgb2Zmc2V0ID0gJCh0aGlzKS5wb3NpdGlvbigpLnRvcCAtICQoZG9jdW1lbnQpLnNjcm9sbFRvcCgpIC0gTWF0aC5tYXgoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCwgd2luZG93LmlubmVySGVpZ2h0IHx8IDApLzQ7IC8vIE5lZ2F0aXZlIG9mZnNldCB2YWx1ZXMgaW5kaWNhdGUgdGhlIGhlYWRlcidzIHRvcCBoYXMgcGFzc2VkIDEvNCBvZiB0aGUgd2F5IGRvd24gdGhlIHZpZXdwb3J0XHJcbiAgICAgICAgLy9jb25zb2xlLmxvZygkKHRoaXMpLnRleHQoKSArICcgJyArIG9mZnNldCk7XHJcbiAgICAgICAgaWYgKG9mZnNldCA+IHNtYWxsZXN0b2Zmc2V0ICYmIG9mZnNldCA8PSAwKSB7XHJcbiAgICAgICAgICAgIHNtYWxsZXN0b2Zmc2V0ID0gb2Zmc2V0O1xyXG4gICAgICAgICAgICBzbWFsbGVzdGhlYWRlciA9ICQodGhpcyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHNtYWxsZXN0aGVhZGVyID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICBzbWFsbGVzdGhlYWRlciA9ICQoJ2FydGljbGUgaDE6Zmlyc3QnKTtcclxuICAgIH1cclxuXHJcbiAgICAvL2NvbnNvbGUubG9nKHNtYWxsZXN0aGVhZGVyLnRleHQoKSk7XHJcblxyXG4gICAgJCgnI3ZhLXRvYz51bD5saScpLmVhY2goZnVuY3Rpb24oaSkge1xyXG4gICAgICAgIC8vY29uc29sZS5sb2coJCh0aGlzKS5jaGlsZHJlbignYScpLmF0dHIoJ2hyZWYnKSk7XHJcbiAgICAgICAgLy9jb25zb2xlLmxvZygnIycgKyBzbWFsbGVzdGhlYWRlci5hdHRyKCdpZCcpKTtcclxuICAgICAgICBpZiAoJCh0aGlzKS5jaGlsZHJlbignYScpLmF0dHIoJ2hyZWYnKSA9PT0gJyMnICsgc21hbGxlc3RoZWFkZXIuYXR0cignaWQnKSkge1xyXG4gICAgICAgICAgICAkKHRoaXMpLmNoaWxkcmVuKCd1bCcpLmFkZENsYXNzKCdjdXJyZW50Jyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAkKHRoaXMpLmNoaWxkcmVuKCd1bCcpLnJlbW92ZUNsYXNzKCdjdXJyZW50Jyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICAvL2NvbnNvbGUubG9nKCQoZG9jdW1lbnQpLnNjcm9sbFRvcCgpKTtcclxufTtcclxuXHJcbiQoZG9jdW1lbnQpLmFqYXhTdG9wKGZ1bmN0aW9uKGV2ZW50LCB4aHIsIG9wdGlvbnMpIHtcclxuICAgIC8vY29uc29sZS5sb2coZXZlbnQpO1xyXG5cclxuICAgIHZhciB0b2MgPSBcIlwiO1xyXG4gICAgdmFyIGxldmVsID0gMDtcclxuXHJcbiAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIm1haW4tY29udGVudFwiKS5pbm5lckhUTUwgPVxyXG4gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibWFpbi1jb250ZW50XCIpLmlubmVySFRNTC5yZXBsYWNlKFxyXG4gICAgICAgICAgICAvPGgoW1xcZF0pIGlkPVwiKC4rKVwiPihbXjxdKyk8XFwvaChbXFxkXSk+L2dpLFxyXG4gICAgICAgICAgICBmdW5jdGlvbiAoc3RyLCBvcGVuTGV2ZWwsIGlkLCB0aXRsZVRleHQsIGNsb3NlTGV2ZWwpIHtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAob3BlbkxldmVsID4gbGV2ZWwpIHtcclxuICAgICAgICAgICAgICAgICAgICB0b2MgKz0gKG5ldyBBcnJheShvcGVuTGV2ZWwgLSBsZXZlbCArIDEpKS5qb2luKFwiPHVsPlwiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG9wZW5MZXZlbCA8IGxldmVsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9jICs9IChuZXcgQXJyYXkobGV2ZWwgLSBvcGVuTGV2ZWwgKyAxKSkuam9pbihcIjwvdWw+XCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRvYyArPSBcIjwvbGk+XCI7XHJcblxyXG4gICAgICAgICAgICAgICAgbGV2ZWwgPSBwYXJzZUludChvcGVuTGV2ZWwpO1xyXG5cclxuICAgICAgICAgICAgICAgIHRvYyArPSBcIjxsaT48YSBocmVmPVxcXCIjXCIgKyBpZCArIFwiXFxcIj5cIiArIHRpdGxlVGV4dFxyXG4gICAgICAgICAgICAgICAgICAgICsgXCI8L2E+XCI7XHJcblxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHN0cjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGlmIChsZXZlbCkge1xyXG4gICAgICAgICAgICB0b2MgKz0gKG5ldyBBcnJheShsZXZlbCArMSkpLmpvaW4oXCI8L3VsPlwiKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwidmEtdG9jXCIpLmlubmVySFRNTCArPSB0b2M7XHJcblxyXG4gICAgICAgIHVwZGF0ZXRvYygpO1xyXG59KTtcclxuXHJcbiQoZG9jdW1lbnQpLm9uKCdzY3JvbGwnLCB1cGRhdGV0b2MpO1xyXG4iLCJcclxuXHJcbi8vIENvZGUgY291cnRlc3kgb2YgTW9oYW1lZCBIYXNhblxyXG4vLyBodHRwczovL2NvZGVwZW4uaW8vTWhtZGhhc2FuL3Blbi9tQWRhUUVcclxuXHJcbiQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHtcclxuICBcclxuICAndXNlIHN0cmljdCc7XHJcbiAgXHJcbiAgIHZhciBjLCBjdXJyZW50U2Nyb2xsVG9wID0gMCxcclxuICAgICAgIG5hdmJhciA9ICQoJ2hlYWRlcicpO1xyXG5cclxuICAgIHZhciBob3ZlcmVkID0gZmFsc2U7XHJcblxyXG4gICAgbmF2YmFyLmhvdmVyKGZ1bmN0aW9uKCkge1xyXG4gICAgICAgIGhvdmVyZWQgPSB0cnVlO1xyXG4gICAgfSxcclxuICAgIGZ1bmN0aW9uKCkge1xyXG4gICAgICAgIGhvdmVyZWQgPSBmYWxzZTtcclxuICAgIH0pO1xyXG5cclxuICAgJCh3aW5kb3cpLnNjcm9sbChmdW5jdGlvbiAoKSB7XHJcbiAgICAgIHZhciBhID0gJCh3aW5kb3cpLnNjcm9sbFRvcCgpO1xyXG4gICAgICB2YXIgYiA9IG5hdmJhci5oZWlnaHQoKTtcclxuICAgICBcclxuICAgICAgY3VycmVudFNjcm9sbFRvcCA9IGE7XHJcbiAgICAgXHJcbiAgICAgIGlmIChjIDwgY3VycmVudFNjcm9sbFRvcCAmJiBhID4gYiArIGIgJiYgbmF2YmFyICYmICFob3ZlcmVkKSB7XHJcbiAgICAgICAgbmF2YmFyLmFkZENsYXNzKFwic2Nyb2xsVXBcIik7XHJcbiAgICAgIH0gZWxzZSBpZiAoYyA+IGN1cnJlbnRTY3JvbGxUb3AgJiYgIShhIDw9IGIpKSB7XHJcbiAgICAgICAgbmF2YmFyLnJlbW92ZUNsYXNzKFwic2Nyb2xsVXBcIik7XHJcbiAgICAgIH1cclxuICAgICAgYyA9IGN1cnJlbnRTY3JvbGxUb3A7XHJcbiAgfSk7XHJcbiAgXHJcbn0pO1xyXG4iLCJcclxuXHJcbi8vQ29kZSBjb3VydGVzeSBvZiBodHRwczovL2NvZGVwZW4uaW8va3J1eG9yL3Blbi9Dd3BGcVxyXG5cclxuJCh3aW5kb3cpLnNjcm9sbChmdW5jdGlvbigpIHtcclxuICAgIGlmICgkKHRoaXMpLnNjcm9sbFRvcCgpID4gNTAgKSB7XHJcbiAgICAgICAgJCgnLnNjcm9sbHRvcDpoaWRkZW4nKS5zdG9wKHRydWUsIHRydWUpLmZhZGVJbigpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICAkKCcuc2Nyb2xsdG9wJykuc3RvcCh0cnVlLCB0cnVlKS5mYWRlT3V0KCk7XHJcbiAgICB9XHJcbn0pO1xyXG4kKGZ1bmN0aW9uKCl7JChcIi5zY3JvbGxcIikuY2xpY2soZnVuY3Rpb24oKXskKFwiaHRtbCxib2R5XCIpLmFuaW1hdGUoe3Njcm9sbFRvcDokKFwiI3RvcFwiKS5vZmZzZXQoKS50b3B9LFwiMTAwMFwiKTtyZXR1cm4gZmFsc2V9KX0pO1xyXG4iXX0= | + | //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFqYXhsb2Fkcy5qcyIsImZvb3Rlci1oZWFkZXItdGVtcGxhdGUuanMiLCJpbWFnZS1nYWxsZXJ5LmpzIiwibmF2bGluZS5qcyIsInNjcm9sbHNlbnNpdGl2ZS5qcyIsInNtb290aHNjcm9sbGJhci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQ0hBO0FDQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQ2xDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUMxRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUNwQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoid2lraS5qcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5cclxuICBcclxuIiwiIiwiJChkb2N1bWVudCkuYWpheFN0b3AoZnVuY3Rpb24gKCkge1xyXG4gICAgJ3VzZSBzdHJpY3QnO1xyXG4gICAgXHJcbiAgICB2YXIgcHJldmlvdXMgPSAnTmdvemknO1xyXG5cclxuICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICcjaW1hZ2VfZ2FsbGVyeScsIGZ1bmN0aW9uKGV2ZW50KSB7XHJcbiAgICAgICAgdmFyIGlkX25hbWUgPSBldmVudC50YXJnZXQuaWQ7XHJcbiAgICAgICAgY29uc29sZS5sb2coaWRfbmFtZSk7XHJcbiAgICAgICAgaWRfbmFtZSA9IGlkX25hbWUucmVwbGFjZSgvWzAtOV0vZywgJycpOyAvL3JlZ2V4IGZvciBhbHBoYWJldHMsIG5vIG51bWJlcnNcclxuICAgICAgICB2YXIgaWRfdG9nZ2xlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWRfbmFtZSk7IC8vZ2V0IElEIG9mIG5hbWVzIHVuZGVyIGNsYXNzICd0ZWFtLWJpbydcclxuXHJcbiAgICAgICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkX25hbWUpICYmIGlkX25hbWUgIT0gXCJpbWFnZV9nYWxsZXJ5XCIpIHsgLy9pZiBJRCBleGlzdHMgYW5kIGFjY291bnRpbmcgZm9yIHdoaXRlIHNwYWNlXHJcbiAgICAgICAgICAgIGlmICgocHJldmlvdXMgIT0gaWRfbmFtZSkpIHsgLy9pZiB5b3UgY2xpY2sgYSBkaWZmIGltYWdlXHJcbiAgICAgICAgICAgICAgICB2YXIgaWRfcHJldmlvdXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwcmV2aW91cyk7XHJcbiAgICAgICAgICAgICAgICAkKGlkX3ByZXZpb3VzKS5yZW1vdmVDbGFzcygndW5oaWRkZW4nKTtcclxuICAgICAgICAgICAgICAgICQoaWRfcHJldmlvdXMpLmFkZENsYXNzKCdoaWRkZW4nKTtcclxuICAgICAgICAgICAgICAgIC8vJChpZF9wcmV2aW91cykudG9nZ2xlQ2xhc3MoJ2hpZGRlbicpO1xyXG4gICAgICAgICAgICAgICAgLy9jb25zb2xlLmxvZyhpZF9wcmV2aW91cyk7XHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgIGVsc2UgaWYgKHByZXZpb3VzID09IGlkX25hbWUpIHsgLy9jbGlja2luZyBvbiB0aGUgc2FtZSBpbWFnZVxyXG4gICAgICAgICAgICAgICAgJChpZF9wcmV2aW91cykucmVtb3ZlQ2xhc3MoJ2hpZGRlbicpOyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICQoaWRfcHJldmlvdXMpLmFkZENsYXNzKCd1bmhpZGRlbicpO1xyXG4gICAgICAgICAgICAgICAgLy8kKGlkX3RvZ2dsZSkudG9nZ2xlQ2xhc3MoJ3VuaGlkZGVuJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJChpZF90b2dnbGUpLnJlbW92ZUNsYXNzKCdoaWRkZW4nKTtcclxuICAgICAgICAgICAgJChpZF90b2dnbGUpLmFkZENsYXNzKCd1bmhpZGRlbicpO1xyXG4gICAgICAgICAgICAvLyQoaWRfdG9nZ2xlKS50b2dnbGVDbGFzcygndW5oaWRkZW4nKTsgLy9zaG93IGJpb1xyXG4gICAgICAgICAgICBwcmV2aW91cyA9IGlkX25hbWU7IC8vY2hlY2tzIHRvIHNlZSBpZiB5b3UgY2xpY2tlZCBkaWZmZXJlbnQgaW1hZ2VzXHJcbiAgICAgICAgfSBcclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgJChwcmV2aW91cykudG9nZ2xlQ2xhc3MoJ3VuaGlkZGVuJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbn0pO1xyXG4iLCIvLyBDb2RlIGNvdXJ0ZXN5IG9mIEF0ZXMgR29yYWxcclxuLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzE4Nzk0NlxyXG5cclxudmFyIHVwZGF0ZXRvYyA9IGZ1bmN0aW9uKCkge1xyXG4gICAgdmFyIHNtYWxsZXN0b2Zmc2V0ID0gLSQoZG9jdW1lbnQpLmhlaWdodCgpO1xyXG4gICAgdmFyIHNtYWxsZXN0aGVhZGVyO1xyXG5cclxuICAgICQoJ2FydGljbGUgaDEnKS5lYWNoKGZ1bmN0aW9uKGkpIHsgXHJcbiAgICAgICAgdmFyIG9mZnNldCA9ICQodGhpcykucG9zaXRpb24oKS50b3AgLSAkKGRvY3VtZW50KS5zY3JvbGxUb3AoKSAtIE1hdGgubWF4KGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQsIHdpbmRvdy5pbm5lckhlaWdodCB8fCAwKS80OyAvLyBOZWdhdGl2ZSBvZmZzZXQgdmFsdWVzIGluZGljYXRlIHRoZSBoZWFkZXIncyB0b3AgaGFzIHBhc3NlZCAxLzQgb2YgdGhlIHdheSBkb3duIHRoZSB2aWV3cG9ydFxyXG4gICAgICAgIC8vY29uc29sZS5sb2coJCh0aGlzKS50ZXh0KCkgKyAnICcgKyBvZmZzZXQpO1xyXG4gICAgICAgIGlmIChvZmZzZXQgPiBzbWFsbGVzdG9mZnNldCAmJiBvZmZzZXQgPD0gMCkge1xyXG4gICAgICAgICAgICBzbWFsbGVzdG9mZnNldCA9IG9mZnNldDtcclxuICAgICAgICAgICAgc21hbGxlc3RoZWFkZXIgPSAkKHRoaXMpO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGlmIChzbWFsbGVzdGhlYWRlciA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgc21hbGxlc3RoZWFkZXIgPSAkKCdhcnRpY2xlIGgxOmZpcnN0Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgLy9jb25zb2xlLmxvZyhzbWFsbGVzdGhlYWRlci50ZXh0KCkpO1xyXG5cclxuICAgICQoJyN2YS10b2M+dWw+bGknKS5lYWNoKGZ1bmN0aW9uKGkpIHtcclxuICAgICAgICAvL2NvbnNvbGUubG9nKCQodGhpcykuY2hpbGRyZW4oJ2EnKS5hdHRyKCdocmVmJykpO1xyXG4gICAgICAgIC8vY29uc29sZS5sb2coJyMnICsgc21hbGxlc3RoZWFkZXIuYXR0cignaWQnKSk7XHJcbiAgICAgICAgaWYgKCQodGhpcykuY2hpbGRyZW4oJ2EnKS5hdHRyKCdocmVmJykgPT09ICcjJyArIHNtYWxsZXN0aGVhZGVyLmF0dHIoJ2lkJykpIHtcclxuICAgICAgICAgICAgJCh0aGlzKS5jaGlsZHJlbigndWwnKS5hZGRDbGFzcygnY3VycmVudCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgJCh0aGlzKS5jaGlsZHJlbigndWwnKS5yZW1vdmVDbGFzcygnY3VycmVudCcpO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgLy9jb25zb2xlLmxvZygkKGRvY3VtZW50KS5zY3JvbGxUb3AoKSk7XHJcbn07XHJcblxyXG4kKGRvY3VtZW50KS5hamF4U3RvcChmdW5jdGlvbihldmVudCwgeGhyLCBvcHRpb25zKSB7XHJcbiAgICAvL2NvbnNvbGUubG9nKGV2ZW50KTtcclxuXHJcbiAgICB2YXIgdG9jID0gXCJcIjtcclxuICAgIHZhciBsZXZlbCA9IDA7XHJcblxyXG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJtYWluLWNvbnRlbnRcIikuaW5uZXJIVE1MID1cclxuICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIm1haW4tY29udGVudFwiKS5pbm5lckhUTUwucmVwbGFjZShcclxuICAgICAgICAgICAgLzxoKFtcXGRdKSBpZD1cIiguKylcIj4oW148XSspPFxcL2goW1xcZF0pPi9naSxcclxuICAgICAgICAgICAgZnVuY3Rpb24gKHN0ciwgb3BlbkxldmVsLCBpZCwgdGl0bGVUZXh0LCBjbG9zZUxldmVsKSB7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKG9wZW5MZXZlbCA+IGxldmVsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9jICs9IChuZXcgQXJyYXkob3BlbkxldmVsIC0gbGV2ZWwgKyAxKSkuam9pbihcIjx1bD5cIik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChvcGVuTGV2ZWwgPCBsZXZlbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRvYyArPSAobmV3IEFycmF5KGxldmVsIC0gb3BlbkxldmVsICsgMSkpLmpvaW4oXCI8L3VsPlwiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0b2MgKz0gXCI8L2xpPlwiO1xyXG5cclxuICAgICAgICAgICAgICAgIGxldmVsID0gcGFyc2VJbnQob3BlbkxldmVsKTtcclxuXHJcbiAgICAgICAgICAgICAgICB0b2MgKz0gXCI8bGk+PGEgaHJlZj1cXFwiI1wiICsgaWQgKyBcIlxcXCI+XCIgKyB0aXRsZVRleHRcclxuICAgICAgICAgICAgICAgICAgICArIFwiPC9hPlwiO1xyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiBzdHI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBpZiAobGV2ZWwpIHtcclxuICAgICAgICAgICAgdG9jICs9IChuZXcgQXJyYXkobGV2ZWwgKzEpKS5qb2luKFwiPC91bD5cIik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInZhLXRvY1wiKS5pbm5lckhUTUwgKz0gdG9jO1xyXG5cclxuICAgICAgICB1cGRhdGV0b2MoKTtcclxufSk7XHJcblxyXG4kKGRvY3VtZW50KS5vbignc2Nyb2xsJywgdXBkYXRldG9jKTtcclxuIiwiXHJcblxyXG4vLyBDb2RlIGNvdXJ0ZXN5IG9mIE1vaGFtZWQgSGFzYW5cclxuLy8gaHR0cHM6Ly9jb2RlcGVuLmlvL01obWRoYXNhbi9wZW4vbUFkYVFFXHJcblxyXG4kKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7XHJcbiAgXHJcbiAgJ3VzZSBzdHJpY3QnO1xyXG4gIFxyXG4gICB2YXIgYywgY3VycmVudFNjcm9sbFRvcCA9IDAsXHJcbiAgICAgICBuYXZiYXIgPSAkKCdoZWFkZXInKTtcclxuXHJcbiAgICB2YXIgaG92ZXJlZCA9IGZhbHNlO1xyXG5cclxuICAgIG5hdmJhci5ob3ZlcihmdW5jdGlvbigpIHtcclxuICAgICAgICBob3ZlcmVkID0gdHJ1ZTtcclxuICAgIH0sXHJcbiAgICBmdW5jdGlvbigpIHtcclxuICAgICAgICBob3ZlcmVkID0gZmFsc2U7XHJcbiAgICB9KTtcclxuXHJcbiAgICQod2luZG93KS5zY3JvbGwoZnVuY3Rpb24gKCkge1xyXG4gICAgICB2YXIgYSA9ICQod2luZG93KS5zY3JvbGxUb3AoKTtcclxuICAgICAgdmFyIGIgPSBuYXZiYXIuaGVpZ2h0KCk7XHJcbiAgICAgXHJcbiAgICAgIGN1cnJlbnRTY3JvbGxUb3AgPSBhO1xyXG4gICAgIFxyXG4gICAgICBpZiAoYyA8IGN1cnJlbnRTY3JvbGxUb3AgJiYgYSA+IGIgKyBiICYmIG5hdmJhciAmJiAhaG92ZXJlZCkge1xyXG4gICAgICAgIG5hdmJhci5hZGRDbGFzcyhcInNjcm9sbFVwXCIpO1xyXG4gICAgICB9IGVsc2UgaWYgKGMgPiBjdXJyZW50U2Nyb2xsVG9wICYmICEoYSA8PSBiKSkge1xyXG4gICAgICAgIG5hdmJhci5yZW1vdmVDbGFzcyhcInNjcm9sbFVwXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGMgPSBjdXJyZW50U2Nyb2xsVG9wO1xyXG4gIH0pO1xyXG4gIFxyXG59KTtcclxuIiwiXHJcblxyXG4vL0NvZGUgY291cnRlc3kgb2YgaHR0cHM6Ly9jb2RlcGVuLmlvL2tydXhvci9wZW4vQ3dwRnFcclxuXHJcbiQod2luZG93KS5zY3JvbGwoZnVuY3Rpb24oKSB7XHJcbiAgICBpZiAoJCh0aGlzKS5zY3JvbGxUb3AoKSA+IDUwICkge1xyXG4gICAgICAgICQoJy5zY3JvbGx0b3A6aGlkZGVuJykuc3RvcCh0cnVlLCB0cnVlKS5mYWRlSW4oKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgJCgnLnNjcm9sbHRvcCcpLnN0b3AodHJ1ZSwgdHJ1ZSkuZmFkZU91dCgpO1xyXG4gICAgfVxyXG59KTtcclxuJChmdW5jdGlvbigpeyQoXCIuc2Nyb2xsXCIpLmNsaWNrKGZ1bmN0aW9uKCl7JChcImh0bWwsYm9keVwiKS5hbmltYXRlKHtzY3JvbGxUb3A6JChcIiN0b3BcIikub2Zmc2V0KCkudG9wfSxcIjEwMDBcIik7cmV0dXJuIGZhbHNlfSl9KTtcclxuIl19 |
Revision as of 15:26, 31 August 2018
/**
* This page and wiki was built with the help of igem-wikibrick, a tool created by Virginia iGEM 2018
* @version v0.6.9
* @version v0.6.9
* @link https://github.com/Virginia-iGEM/igem-wikibrick
* @license MIT
*/
$(document).ajaxStop(function () {
'use strict';
var previous = 'Ngozi';
$(document).on('click', '#image_gallery', function(event) {
var id_name = event.target.id;
console.log(id_name);
id_name = id_name.replace(/[0-9]/g, ); //regex for alphabets, no numbers
var id_toggle = document.getElementById(id_name); //get ID of names under class 'team-bio'
if (document.getElementById(id_name) && id_name != "image_gallery") { //if ID exists and accounting for white space
if ((previous != id_name)) { //if you click a diff image
var id_previous = document.getElementById(previous);
$(id_previous).removeClass('unhidden');
$(id_previous).addClass('hidden');
//$(id_previous).toggleClass('hidden');
//console.log(id_previous);
}
else if (previous == id_name) { //clicking on the same image
$(id_previous).removeClass('hidden');
$(id_previous).addClass('unhidden');
//$(id_toggle).toggleClass('unhidden');
}
$(id_toggle).removeClass('hidden');
$(id_toggle).addClass('unhidden');
//$(id_toggle).toggleClass('unhidden'); //show bio
previous = id_name; //checks to see if you clicked different images
}
else {
$(previous).toggleClass('unhidden');
}
});
});
// Code courtesy of Ates Goral
// https://stackoverflow.com/a/187946
var updatetoc = function() {
var smallestoffset = -$(document).height();
var smallestheader;
$('article h1').each(function(i) {
var offset = $(this).position().top - $(document).scrollTop() - Math.max(document.documentElement.clientHeight, window.innerHeight || 0)/4; // Negative offset values indicate the header's top has passed 1/4 of the way down the viewport
//console.log($(this).text() + ' ' + offset);
if (offset > smallestoffset && offset <= 0) {
smallestoffset = offset;
smallestheader = $(this);
}
});
if (smallestheader === undefined) {
smallestheader = $('article h1:first');
}
//console.log(smallestheader.text());
$('#va-toc>ul>li').each(function(i) {
//console.log($(this).children('a').attr('href'));
//console.log('#' + smallestheader.attr('id'));
if ($(this).children('a').attr('href') === '#' + smallestheader.attr('id')) {
$(this).children('ul').addClass('current');
}
else {
$(this).children('ul').removeClass('current');
}
});
//console.log($(document).scrollTop());
};
$(document).ajaxStop(function(event, xhr, options) {
//console.log(event);
var toc = "";
var level = 0;
document.getElementById("main-content").innerHTML =
document.getElementById("main-content").innerHTML.replace(
/<h([\d]) id="(.+)">([^<]+)<\/h([\d])>/gi,
function (str, openLevel, id, titleText, closeLevel) {
if (openLevel > level) {
toc += (new Array(openLevel - level + 1)).join("
");
}
else if (openLevel < level) {
toc += (new Array(level - openLevel + 1)).join("
");
}
toc += "</li>";
level = parseInt(openLevel);
toc += "
<a href=\"#" + id + "\">" + titleText
+ "</a>";
return str;
}
);
if (level) {
toc += (new Array(level +1)).join("</ul>");
}
document.getElementById("va-toc").innerHTML += toc;
updatetoc();
});
$(document).on('scroll', updatetoc);
// Code courtesy of Mohamed Hasan
// https://codepen.io/Mhmdhasan/pen/mAdaQE
$(document).ready(function () {
'use strict';
var c, currentScrollTop = 0,
navbar = $('header');
var hovered = false;
navbar.hover(function() {
hovered = true;
},
function() {
hovered = false;
});
$(window).scroll(function () {
var a = $(window).scrollTop();
var b = navbar.height();
currentScrollTop = a;
if (c < currentScrollTop && a > b + b && navbar && !hovered) {
navbar.addClass("scrollUp");
} else if (c > currentScrollTop && !(a <= b)) {
navbar.removeClass("scrollUp");
}
c = currentScrollTop;
});
});
//Code courtesy of https://codepen.io/kruxor/pen/CwpFq
$(window).scroll(function() {
if ($(this).scrollTop() > 50 ) {
$('.scrolltop:hidden').stop(true, true).fadeIn();
} else {
$('.scrolltop').stop(true, true).fadeOut();
}
});
$(function(){$(".scroll").click(function(){$("html,body").animate({scrollTop:$("#top").offset().top},"1000");return false})});
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFqYXhsb2Fkcy5qcyIsImZvb3Rlci1oZWFkZXItdGVtcGxhdGUuanMiLCJpbWFnZS1nYWxsZXJ5LmpzIiwibmF2bGluZS5qcyIsInNjcm9sbHNlbnNpdGl2ZS5qcyIsInNtb290aHNjcm9sbGJhci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQ0hBO0FDQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQ2xDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUMxRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUNwQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJmaWxlIjoid2lraS5qcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5cclxuICBcclxuIiwiIiwiJChkb2N1bWVudCkuYWpheFN0b3AoZnVuY3Rpb24gKCkge1xyXG4gICAgJ3VzZSBzdHJpY3QnO1xyXG4gICAgXHJcbiAgICB2YXIgcHJldmlvdXMgPSAnTmdvemknO1xyXG5cclxuICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICcjaW1hZ2VfZ2FsbGVyeScsIGZ1bmN0aW9uKGV2ZW50KSB7XHJcbiAgICAgICAgdmFyIGlkX25hbWUgPSBldmVudC50YXJnZXQuaWQ7XHJcbiAgICAgICAgY29uc29sZS5sb2coaWRfbmFtZSk7XHJcbiAgICAgICAgaWRfbmFtZSA9IGlkX25hbWUucmVwbGFjZSgvWzAtOV0vZywgJycpOyAvL3JlZ2V4IGZvciBhbHBoYWJldHMsIG5vIG51bWJlcnNcclxuICAgICAgICB2YXIgaWRfdG9nZ2xlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWRfbmFtZSk7IC8vZ2V0IElEIG9mIG5hbWVzIHVuZGVyIGNsYXNzICd0ZWFtLWJpbydcclxuXHJcbiAgICAgICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkX25hbWUpICYmIGlkX25hbWUgIT0gXCJpbWFnZV9nYWxsZXJ5XCIpIHsgLy9pZiBJRCBleGlzdHMgYW5kIGFjY291bnRpbmcgZm9yIHdoaXRlIHNwYWNlXHJcbiAgICAgICAgICAgIGlmICgocHJldmlvdXMgIT0gaWRfbmFtZSkpIHsgLy9pZiB5b3UgY2xpY2sgYSBkaWZmIGltYWdlXHJcbiAgICAgICAgICAgICAgICB2YXIgaWRfcHJldmlvdXMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChwcmV2aW91cyk7XHJcbiAgICAgICAgICAgICAgICAkKGlkX3ByZXZpb3VzKS5yZW1vdmVDbGFzcygndW5oaWRkZW4nKTtcclxuICAgICAgICAgICAgICAgICQoaWRfcHJldmlvdXMpLmFkZENsYXNzKCdoaWRkZW4nKTtcclxuICAgICAgICAgICAgICAgIC8vJChpZF9wcmV2aW91cykudG9nZ2xlQ2xhc3MoJ2hpZGRlbicpO1xyXG4gICAgICAgICAgICAgICAgLy9jb25zb2xlLmxvZyhpZF9wcmV2aW91cyk7XHJcbiAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgIGVsc2UgaWYgKHByZXZpb3VzID09IGlkX25hbWUpIHsgLy9jbGlja2luZyBvbiB0aGUgc2FtZSBpbWFnZVxyXG4gICAgICAgICAgICAgICAgJChpZF9wcmV2aW91cykucmVtb3ZlQ2xhc3MoJ2hpZGRlbicpOyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICQoaWRfcHJldmlvdXMpLmFkZENsYXNzKCd1bmhpZGRlbicpO1xyXG4gICAgICAgICAgICAgICAgLy8kKGlkX3RvZ2dsZSkudG9nZ2xlQ2xhc3MoJ3VuaGlkZGVuJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJChpZF90b2dnbGUpLnJlbW92ZUNsYXNzKCdoaWRkZW4nKTtcclxuICAgICAgICAgICAgJChpZF90b2dnbGUpLmFkZENsYXNzKCd1bmhpZGRlbicpO1xyXG4gICAgICAgICAgICAvLyQoaWRfdG9nZ2xlKS50b2dnbGVDbGFzcygndW5oaWRkZW4nKTsgLy9zaG93IGJpb1xyXG4gICAgICAgICAgICBwcmV2aW91cyA9IGlkX25hbWU7IC8vY2hlY2tzIHRvIHNlZSBpZiB5b3UgY2xpY2tlZCBkaWZmZXJlbnQgaW1hZ2VzXHJcbiAgICAgICAgfSBcclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgJChwcmV2aW91cykudG9nZ2xlQ2xhc3MoJ3VuaGlkZGVuJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbn0pO1xyXG4iLCIvLyBDb2RlIGNvdXJ0ZXN5IG9mIEF0ZXMgR29yYWxcclxuLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzE4Nzk0NlxyXG5cclxudmFyIHVwZGF0ZXRvYyA9IGZ1bmN0aW9uKCkge1xyXG4gICAgdmFyIHNtYWxsZXN0b2Zmc2V0ID0gLSQoZG9jdW1lbnQpLmhlaWdodCgpO1xyXG4gICAgdmFyIHNtYWxsZXN0aGVhZGVyO1xyXG5cclxuICAgICQoJ2FydGljbGUgaDEnKS5lYWNoKGZ1bmN0aW9uKGkpIHsgXHJcbiAgICAgICAgdmFyIG9mZnNldCA9ICQodGhpcykucG9zaXRpb24oKS50b3AgLSAkKGRvY3VtZW50KS5zY3JvbGxUb3AoKSAtIE1hdGgubWF4KGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQsIHdpbmRvdy5pbm5lckhlaWdodCB8fCAwKS80OyAvLyBOZWdhdGl2ZSBvZmZzZXQgdmFsdWVzIGluZGljYXRlIHRoZSBoZWFkZXIncyB0b3AgaGFzIHBhc3NlZCAxLzQgb2YgdGhlIHdheSBkb3duIHRoZSB2aWV3cG9ydFxyXG4gICAgICAgIC8vY29uc29sZS5sb2coJCh0aGlzKS50ZXh0KCkgKyAnICcgKyBvZmZzZXQpO1xyXG4gICAgICAgIGlmIChvZmZzZXQgPiBzbWFsbGVzdG9mZnNldCAmJiBvZmZzZXQgPD0gMCkge1xyXG4gICAgICAgICAgICBzbWFsbGVzdG9mZnNldCA9IG9mZnNldDtcclxuICAgICAgICAgICAgc21hbGxlc3RoZWFkZXIgPSAkKHRoaXMpO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGlmIChzbWFsbGVzdGhlYWRlciA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgc21hbGxlc3RoZWFkZXIgPSAkKCdhcnRpY2xlIGgxOmZpcnN0Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgLy9jb25zb2xlLmxvZyhzbWFsbGVzdGhlYWRlci50ZXh0KCkpO1xyXG5cclxuICAgICQoJyN2YS10b2M+dWw+bGknKS5lYWNoKGZ1bmN0aW9uKGkpIHtcclxuICAgICAgICAvL2NvbnNvbGUubG9nKCQodGhpcykuY2hpbGRyZW4oJ2EnKS5hdHRyKCdocmVmJykpO1xyXG4gICAgICAgIC8vY29uc29sZS5sb2coJyMnICsgc21hbGxlc3RoZWFkZXIuYXR0cignaWQnKSk7XHJcbiAgICAgICAgaWYgKCQodGhpcykuY2hpbGRyZW4oJ2EnKS5hdHRyKCdocmVmJykgPT09ICcjJyArIHNtYWxsZXN0aGVhZGVyLmF0dHIoJ2lkJykpIHtcclxuICAgICAgICAgICAgJCh0aGlzKS5jaGlsZHJlbigndWwnKS5hZGRDbGFzcygnY3VycmVudCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgJCh0aGlzKS5jaGlsZHJlbigndWwnKS5yZW1vdmVDbGFzcygnY3VycmVudCcpO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgLy9jb25zb2xlLmxvZygkKGRvY3VtZW50KS5zY3JvbGxUb3AoKSk7XHJcbn07XHJcblxyXG4kKGRvY3VtZW50KS5hamF4U3RvcChmdW5jdGlvbihldmVudCwgeGhyLCBvcHRpb25zKSB7XHJcbiAgICAvL2NvbnNvbGUubG9nKGV2ZW50KTtcclxuXHJcbiAgICB2YXIgdG9jID0gXCJcIjtcclxuICAgIHZhciBsZXZlbCA9IDA7XHJcblxyXG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJtYWluLWNvbnRlbnRcIikuaW5uZXJIVE1MID1cclxuICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIm1haW4tY29udGVudFwiKS5pbm5lckhUTUwucmVwbGFjZShcclxuICAgICAgICAgICAgLzxoKFtcXGRdKSBpZD1cIiguKylcIj4oW148XSspPFxcL2goW1xcZF0pPi9naSxcclxuICAgICAgICAgICAgZnVuY3Rpb24gKHN0ciwgb3BlbkxldmVsLCBpZCwgdGl0bGVUZXh0LCBjbG9zZUxldmVsKSB7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKG9wZW5MZXZlbCA+IGxldmVsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9jICs9IChuZXcgQXJyYXkob3BlbkxldmVsIC0gbGV2ZWwgKyAxKSkuam9pbihcIjx1bD5cIik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChvcGVuTGV2ZWwgPCBsZXZlbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRvYyArPSAobmV3IEFycmF5KGxldmVsIC0gb3BlbkxldmVsICsgMSkpLmpvaW4oXCI8L3VsPlwiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0b2MgKz0gXCI8L2xpPlwiO1xyXG5cclxuICAgICAgICAgICAgICAgIGxldmVsID0gcGFyc2VJbnQob3BlbkxldmVsKTtcclxuXHJcbiAgICAgICAgICAgICAgICB0b2MgKz0gXCI8bGk+PGEgaHJlZj1cXFwiI1wiICsgaWQgKyBcIlxcXCI+XCIgKyB0aXRsZVRleHRcclxuICAgICAgICAgICAgICAgICAgICArIFwiPC9hPlwiO1xyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybiBzdHI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBpZiAobGV2ZWwpIHtcclxuICAgICAgICAgICAgdG9jICs9IChuZXcgQXJyYXkobGV2ZWwgKzEpKS5qb2luKFwiPC91bD5cIik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInZhLXRvY1wiKS5pbm5lckhUTUwgKz0gdG9jO1xyXG5cclxuICAgICAgICB1cGRhdGV0b2MoKTtcclxufSk7XHJcblxyXG4kKGRvY3VtZW50KS5vbignc2Nyb2xsJywgdXBkYXRldG9jKTtcclxuIiwiXHJcblxyXG4vLyBDb2RlIGNvdXJ0ZXN5IG9mIE1vaGFtZWQgSGFzYW5cclxuLy8gaHR0cHM6Ly9jb2RlcGVuLmlvL01obWRoYXNhbi9wZW4vbUFkYVFFXHJcblxyXG4kKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7XHJcbiAgXHJcbiAgJ3VzZSBzdHJpY3QnO1xyXG4gIFxyXG4gICB2YXIgYywgY3VycmVudFNjcm9sbFRvcCA9IDAsXHJcbiAgICAgICBuYXZiYXIgPSAkKCdoZWFkZXInKTtcclxuXHJcbiAgICB2YXIgaG92ZXJlZCA9IGZhbHNlO1xyXG5cclxuICAgIG5hdmJhci5ob3ZlcihmdW5jdGlvbigpIHtcclxuICAgICAgICBob3ZlcmVkID0gdHJ1ZTtcclxuICAgIH0sXHJcbiAgICBmdW5jdGlvbigpIHtcclxuICAgICAgICBob3ZlcmVkID0gZmFsc2U7XHJcbiAgICB9KTtcclxuXHJcbiAgICQod2luZG93KS5zY3JvbGwoZnVuY3Rpb24gKCkge1xyXG4gICAgICB2YXIgYSA9ICQod2luZG93KS5zY3JvbGxUb3AoKTtcclxuICAgICAgdmFyIGIgPSBuYXZiYXIuaGVpZ2h0KCk7XHJcbiAgICAgXHJcbiAgICAgIGN1cnJlbnRTY3JvbGxUb3AgPSBhO1xyXG4gICAgIFxyXG4gICAgICBpZiAoYyA8IGN1cnJlbnRTY3JvbGxUb3AgJiYgYSA+IGIgKyBiICYmIG5hdmJhciAmJiAhaG92ZXJlZCkge1xyXG4gICAgICAgIG5hdmJhci5hZGRDbGFzcyhcInNjcm9sbFVwXCIpO1xyXG4gICAgICB9IGVsc2UgaWYgKGMgPiBjdXJyZW50U2Nyb2xsVG9wICYmICEoYSA8PSBiKSkge1xyXG4gICAgICAgIG5hdmJhci5yZW1vdmVDbGFzcyhcInNjcm9sbFVwXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGMgPSBjdXJyZW50U2Nyb2xsVG9wO1xyXG4gIH0pO1xyXG4gIFxyXG59KTtcclxuIiwiXHJcblxyXG4vL0NvZGUgY291cnRlc3kgb2YgaHR0cHM6Ly9jb2RlcGVuLmlvL2tydXhvci9wZW4vQ3dwRnFcclxuXHJcbiQod2luZG93KS5zY3JvbGwoZnVuY3Rpb24oKSB7XHJcbiAgICBpZiAoJCh0aGlzKS5zY3JvbGxUb3AoKSA+IDUwICkge1xyXG4gICAgICAgICQoJy5zY3JvbGx0b3A6aGlkZGVuJykuc3RvcCh0cnVlLCB0cnVlKS5mYWRlSW4oKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgJCgnLnNjcm9sbHRvcCcpLnN0b3AodHJ1ZSwgdHJ1ZSkuZmFkZU91dCgpO1xyXG4gICAgfVxyXG59KTtcclxuJChmdW5jdGlvbigpeyQoXCIuc2Nyb2xsXCIpLmNsaWNrKGZ1bmN0aW9uKCl7JChcImh0bWwsYm9keVwiKS5hbmltYXRlKHtzY3JvbGxUb3A6JChcIiN0b3BcIikub2Zmc2V0KCkudG9wfSxcIjEwMDBcIik7cmV0dXJuIGZhbHNlfSl9KTtcclxuIl19