GameZer Online


Você não está conectado. Conecte-se ou registre-se

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1 Sistema de "SPRY" em Sex Fev 08, 2013 10:00 am

RafsEstevam

RafsEstevam
Programador
Programador
Spry é um frameworks para Ajax baseado em uma biblioteca JavaScript. Proporciona aos web designers a habilidade de desenvolver web site e aplicativos mais ricos e interativos.

O Spry frameworks potencializa o controle de seus dados, podendo incorporar em suas páginas dados XML, usando suas próprias páginas HTML e CSS, utilizando uma quantidade mínima de JavaScript, sem aquela velha necessidade de recarregar a página inteira. A estrutura do Spry é HTML-centric, ou seja, incorporada no próprio HTML, assim sendo de fácil implementação mesmo para desenvolvedores com conhecimento básico de HTML, CSS e JavaScript. Sua estrutura foi projetada para trabalhar com marcações simples e o mínimo de JavaScript.

O JS está encriptado pois não pode ser editado.

Código:
<Script Language='Javascript'>
document.write(unescape('%2F%2F%20%53%70%72%79%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%6A%73%20%2D%20%76%65%72%73%69%6F%6E%20%30%2E%38%20%2D%20%53%70%72%79%20%50%72%65%2D%52%65%6C%65%61%73%65%20%31%2E%36%2E%31%0A%2F%2F%0A%2F%2F%20%43%6F%70%79%72%69%67%68%74%20%28%63%29%20%32%30%30%36%2E%20%41%64%6F%62%65%20%53%79%73%74%65%6D%73%20%49%6E%63%6F%72%70%6F%72%61%74%65%64%2E%0A%2F%2F%20%41%6C%6C%20%72%69%67%68%74%73%20%72%65%73%65%72%76%65%64%2E%0A%2F%2F%0A%2F%2F%20%52%65%64%69%73%74%72%69%62%75%74%69%6F%6E%20%61%6E%64%20%75%73%65%20%69%6E%20%73%6F%75%72%63%65%20%61%6E%64%20%62%69%6E%61%72%79%20%66%6F%72%6D%73%2C%20%77%69%74%68%20%6F%72%20%77%69%74%68%6F%75%74%0A%2F%2F%20%6D%6F%64%69%66%69%63%61%74%69%6F%6E%2C%20%61%72%65%20%70%65%72%6D%69%74%74%65%64%20%70%72%6F%76%69%64%65%64%20%74%68%61%74%20%74%68%65%20%66%6F%6C%6C%6F%77%69%6E%67%20%63%6F%6E%64%69%74%69%6F%6E%73%20%61%72%65%20%6D%65%74%3A%0A%2F%2F%0A%2F%2F%20%20%20%2A%20%52%65%64%69%73%74%72%69%62%75%74%69%6F%6E%73%20%6F%66%20%73%6F%75%72%63%65%20%63%6F%64%65%20%6D%75%73%74%20%72%65%74%61%69%6E%20%74%68%65%20%61%62%6F%76%65%20%63%6F%70%79%72%69%67%68%74%20%6E%6F%74%69%63%65%2C%0A%2F%2F%20%20%20%20%20%74%68%69%73%20%6C%69%73%74%20%6F%66%20%63%6F%6E%64%69%74%69%6F%6E%73%20%61%6E%64%20%74%68%65%20%66%6F%6C%6C%6F%77%69%6E%67%20%64%69%73%63%6C%61%69%6D%65%72%2E%0A%2F%2F%20%20%20%2A%20%52%65%64%69%73%74%72%69%62%75%74%69%6F%6E%73%20%69%6E%20%62%69%6E%61%72%79%20%66%6F%72%6D%20%6D%75%73%74%20%72%65%70%72%6F%64%75%63%65%20%74%68%65%20%61%62%6F%76%65%20%63%6F%70%79%72%69%67%68%74%20%6E%6F%74%69%63%65%2C%0A%2F%2F%20%20%20%20%20%74%68%69%73%20%6C%69%73%74%20%6F%66%20%63%6F%6E%64%69%74%69%6F%6E%73%20%61%6E%64%20%74%68%65%20%66%6F%6C%6C%6F%77%69%6E%67%20%64%69%73%63%6C%61%69%6D%65%72%20%69%6E%20%74%68%65%20%64%6F%63%75%6D%65%6E%74%61%74%69%6F%6E%0A%2F%2F%20%20%20%20%20%61%6E%64%2F%6F%72%20%6F%74%68%65%72%20%6D%61%74%65%72%69%61%6C%73%20%70%72%6F%76%69%64%65%64%20%77%69%74%68%20%74%68%65%20%64%69%73%74%72%69%62%75%74%69%6F%6E%2E%0A%2F%2F%20%20%20%2A%20%4E%65%69%74%68%65%72%20%74%68%65%20%6E%61%6D%65%20%6F%66%20%41%64%6F%62%65%20%53%79%73%74%65%6D%73%20%49%6E%63%6F%72%70%6F%72%61%74%65%64%20%6E%6F%72%20%74%68%65%20%6E%61%6D%65%73%20%6F%66%20%69%74%73%0A%2F%2F%20%20%20%20%20%63%6F%6E%74%72%69%62%75%74%6F%72%73%20%6D%61%79%20%62%65%20%75%73%65%64%20%74%6F%20%65%6E%64%6F%72%73%65%20%6F%72%20%70%72%6F%6D%6F%74%65%20%70%72%6F%64%75%63%74%73%20%64%65%72%69%76%65%64%20%66%72%6F%6D%20%74%68%69%73%0A%2F%2F%20%20%20%20%20%73%6F%66%74%77%61%72%65%20%77%69%74%68%6F%75%74%20%73%70%65%63%69%66%69%63%20%70%72%69%6F%72%20%77%72%69%74%74%65%6E%20%70%65%72%6D%69%73%73%69%6F%6E%2E%0A%2F%2F%0A%2F%2F%20%54%48%49%53%20%53%4F%46%54%57%41%52%45%20%49%53%20%50%52%4F%56%49%44%45%44%20%42%59%20%54%48%45%20%43%4F%50%59%52%49%47%48%54%20%48%4F%4C%44%45%52%53%20%41%4E%44%20%43%4F%4E%54%52%49%42%55%54%4F%52%53%20%22%41%53%20%49%53%22%0A%2F%2F%20%41%4E%44%20%41%4E%59%20%45%58%50%52%45%53%53%20%4F%52%20%49%4D%50%4C%49%45%44%20%57%41%52%52%41%4E%54%49%45%53%2C%20%49%4E%43%4C%55%44%49%4E%47%2C%20%42%55%54%20%4E%4F%54%20%4C%49%4D%49%54%45%44%20%54%4F%2C%20%54%48%45%0A%2F%2F%20%49%4D%50%4C%49%45%44%20%57%41%52%52%41%4E%54%49%45%53%20%4F%46%20%4D%45%52%43%48%41%4E%54%41%42%49%4C%49%54%59%20%41%4E%44%20%46%49%54%4E%45%53%53%20%46%4F%52%20%41%20%50%41%52%54%49%43%55%4C%41%52%20%50%55%52%50%4F%53%45%0A%2F%2F%20%41%52%45%20%44%49%53%43%4C%41%49%4D%45%44%2E%20%49%4E%20%4E%4F%20%45%56%45%4E%54%20%53%48%41%4C%4C%20%54%48%45%20%43%4F%50%59%52%49%47%48%54%20%4F%57%4E%45%52%20%4F%52%20%43%4F%4E%54%52%49%42%55%54%4F%52%53%20%42%45%0A%2F%2F%20%4C%49%41%42%4C%45%20%46%4F%52%20%41%4E%59%20%44%49%52%45%43%54%2C%20%49%4E%44%49%52%45%43%54%2C%20%49%4E%43%49%44%45%4E%54%41%4C%2C%20%53%50%45%43%49%41%4C%2C%20%45%58%45%4D%50%4C%41%52%59%2C%20%4F%52%0A%2F%2F%20%43%4F%4E%53%45%51%55%45%4E%54%49%41%4C%20%44%41%4D%41%47%45%53%20%28%49%4E%43%4C%55%44%49%4E%47%2C%20%42%55%54%20%4E%4F%54%20%4C%49%4D%49%54%45%44%20%54%4F%2C%20%50%52%4F%43%55%52%45%4D%45%4E%54%20%4F%46%0A%2F%2F%20%53%55%42%53%54%49%54%55%54%45%20%47%4F%4F%44%53%20%4F%52%20%53%45%52%56%49%43%45%53%3B%20%4C%4F%53%53%20%4F%46%20%55%53%45%2C%20%44%41%54%41%2C%20%4F%52%20%50%52%4F%46%49%54%53%3B%20%4F%52%20%42%55%53%49%4E%45%53%53%0A%2F%2F%20%49%4E%54%45%52%52%55%50%54%49%4F%4E%29%20%48%4F%57%45%56%45%52%20%43%41%55%53%45%44%20%41%4E%44%20%4F%4E%20%41%4E%59%20%54%48%45%4F%52%59%20%4F%46%20%4C%49%41%42%49%4C%49%54%59%2C%20%57%48%45%54%48%45%52%20%49%4E%0A%2F%2F%20%43%4F%4E%54%52%41%43%54%2C%20%53%54%52%49%43%54%20%4C%49%41%42%49%4C%49%54%59%2C%20%4F%52%20%54%4F%52%54%20%28%49%4E%43%4C%55%44%49%4E%47%20%4E%45%47%4C%49%47%45%4E%43%45%20%4F%52%20%4F%54%48%45%52%57%49%53%45%29%0A%2F%2F%20%41%52%49%53%49%4E%47%20%49%4E%20%41%4E%59%20%57%41%59%20%4F%55%54%20%4F%46%20%54%48%45%20%55%53%45%20%4F%46%20%54%48%49%53%20%53%4F%46%54%57%41%52%45%2C%20%45%56%45%4E%20%49%46%20%41%44%56%49%53%45%44%20%4F%46%20%54%48%45%0A%2F%2F%20%50%4F%53%53%49%42%49%4C%49%54%59%20%4F%46%20%53%55%43%48%20%44%41%4D%41%47%45%2E%0A%0A%28%66%75%6E%63%74%69%6F%6E%28%29%20%7B%20%2F%2F%20%42%65%67%69%6E%53%70%72%79%43%6F%6D%70%6F%6E%65%6E%74%0A%0A%69%66%20%28%74%79%70%65%6F%66%20%53%70%72%79%20%3D%3D%20%22%75%6E%64%65%66%69%6E%65%64%22%29%20%77%69%6E%64%6F%77%2E%53%70%72%79%20%3D%20%7B%7D%3B%20%69%66%20%28%21%53%70%72%79%2E%57%69%64%67%65%74%29%20%53%70%72%79%2E%57%69%64%67%65%74%20%3D%20%7B%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%6D%65%6E%74%2C%20%6F%70%74%73%29%0A%7B%0A%09%74%68%69%73%2E%65%6C%65%6D%65%6E%74%20%3D%20%74%68%69%73%2E%67%65%74%45%6C%65%6D%65%6E%74%28%65%6C%65%6D%65%6E%74%29%3B%0A%09%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%20%3D%20%6E%75%6C%6C%3B%0A%09%74%68%69%73%2E%68%6F%76%65%72%43%6C%61%73%73%20%3D%20%22%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%54%61%62%48%6F%76%65%72%22%3B%0A%09%74%68%69%73%2E%6F%70%65%6E%43%6C%61%73%73%20%3D%20%22%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%4F%70%65%6E%22%3B%0A%09%74%68%69%73%2E%63%6C%6F%73%65%64%43%6C%61%73%73%20%3D%20%22%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%43%6C%6F%73%65%64%22%3B%0A%09%74%68%69%73%2E%66%6F%63%75%73%65%64%43%6C%61%73%73%20%3D%20%22%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%46%6F%63%75%73%65%64%22%3B%0A%09%74%68%69%73%2E%65%6E%61%62%6C%65%41%6E%69%6D%61%74%69%6F%6E%20%3D%20%74%72%75%65%3B%0A%09%74%68%69%73%2E%65%6E%61%62%6C%65%4B%65%79%62%6F%61%72%64%4E%61%76%69%67%61%74%69%6F%6E%20%3D%20%74%72%75%65%3B%0A%09%74%68%69%73%2E%61%6E%69%6D%61%74%6F%72%20%3D%20%6E%75%6C%6C%3B%0A%09%74%68%69%73%2E%68%61%73%46%6F%63%75%73%20%3D%20%66%61%6C%73%65%3B%0A%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%49%73%4F%70%65%6E%20%3D%20%74%72%75%65%3B%0A%0A%09%74%68%69%73%2E%6F%70%65%6E%50%61%6E%65%6C%4B%65%79%43%6F%64%65%20%3D%20%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%4B%45%59%5F%44%4F%57%4E%3B%0A%09%74%68%69%73%2E%63%6C%6F%73%65%50%61%6E%65%6C%4B%65%79%43%6F%64%65%20%3D%20%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%4B%45%59%5F%55%50%3B%0A%0A%09%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%73%65%74%4F%70%74%69%6F%6E%73%28%74%68%69%73%2C%20%6F%70%74%73%29%3B%0A%0A%09%74%68%69%73%2E%61%74%74%61%63%68%42%65%68%61%76%69%6F%72%73%28%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%45%6C%65%6D%65%6E%74%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%29%0A%7B%0A%09%69%66%20%28%65%6C%65%20%26%26%20%74%79%70%65%6F%66%20%65%6C%65%20%3D%3D%20%22%73%74%72%69%6E%67%22%29%0A%09%09%72%65%74%75%72%6E%20%64%6F%63%75%6D%65%6E%74%2E%67%65%74%45%6C%65%6D%65%6E%74%42%79%49%64%28%65%6C%65%29%3B%0A%09%72%65%74%75%72%6E%20%65%6C%65%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%61%64%64%43%6C%61%73%73%4E%61%6D%65%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%2C%20%63%6C%61%73%73%4E%61%6D%65%29%0A%7B%0A%09%69%66%20%28%21%65%6C%65%20%7C%7C%20%21%63%6C%61%73%73%4E%61%6D%65%20%7C%7C%20%28%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%20%26%26%20%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%2E%73%65%61%72%63%68%28%6E%65%77%20%52%65%67%45%78%70%28%22%5C%5C%62%22%20%2B%20%63%6C%61%73%73%4E%61%6D%65%20%2B%20%22%5C%5C%62%22%29%29%20%21%3D%20%2D%31%29%29%0A%09%09%72%65%74%75%72%6E%3B%0A%09%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%20%2B%3D%20%28%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%20%3F%20%22%20%22%20%3A%20%22%22%29%20%2B%20%63%6C%61%73%73%4E%61%6D%65%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%72%65%6D%6F%76%65%43%6C%61%73%73%4E%61%6D%65%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%2C%20%63%6C%61%73%73%4E%61%6D%65%29%0A%7B%0A%09%69%66%20%28%21%65%6C%65%20%7C%7C%20%21%63%6C%61%73%73%4E%61%6D%65%20%7C%7C%20%28%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%20%26%26%20%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%2E%73%65%61%72%63%68%28%6E%65%77%20%52%65%67%45%78%70%28%22%5C%5C%62%22%20%2B%20%63%6C%61%73%73%4E%61%6D%65%20%2B%20%22%5C%5C%62%22%29%29%20%3D%3D%20%2D%31%29%29%0A%09%09%72%65%74%75%72%6E%3B%0A%09%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%20%3D%20%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%2E%72%65%70%6C%61%63%65%28%6E%65%77%20%52%65%67%45%78%70%28%22%5C%5C%73%2A%5C%5C%62%22%20%2B%20%63%6C%61%73%73%4E%61%6D%65%20%2B%20%22%5C%5C%62%22%2C%20%22%67%22%29%2C%20%22%22%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%68%61%73%43%6C%61%73%73%4E%61%6D%65%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%2C%20%63%6C%61%73%73%4E%61%6D%65%29%0A%7B%0A%09%69%66%20%28%21%65%6C%65%20%7C%7C%20%21%63%6C%61%73%73%4E%61%6D%65%20%7C%7C%20%21%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%20%7C%7C%20%65%6C%65%2E%63%6C%61%73%73%4E%61%6D%65%2E%73%65%61%72%63%68%28%6E%65%77%20%52%65%67%45%78%70%28%22%5C%5C%62%22%20%2B%20%63%6C%61%73%73%4E%61%6D%65%20%2B%20%22%5C%5C%62%22%29%29%20%3D%3D%20%2D%31%29%0A%09%09%72%65%74%75%72%6E%20%66%61%6C%73%65%3B%0A%09%72%65%74%75%72%6E%20%74%72%75%65%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%73%65%74%44%69%73%70%6C%61%79%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%2C%20%64%69%73%70%6C%61%79%29%0A%7B%0A%09%69%66%28%20%65%6C%65%20%29%0A%09%09%65%6C%65%2E%73%74%79%6C%65%2E%64%69%73%70%6C%61%79%20%3D%20%64%69%73%70%6C%61%79%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%73%65%74%4F%70%74%69%6F%6E%73%20%3D%20%66%75%6E%63%74%69%6F%6E%28%6F%62%6A%2C%20%6F%70%74%69%6F%6E%73%4F%62%6A%2C%20%69%67%6E%6F%72%65%55%6E%64%65%66%69%6E%65%64%50%72%6F%70%73%29%0A%7B%0A%09%69%66%20%28%21%6F%70%74%69%6F%6E%73%4F%62%6A%29%0A%09%09%72%65%74%75%72%6E%3B%0A%09%66%6F%72%20%28%76%61%72%20%6F%70%74%69%6F%6E%4E%61%6D%65%20%69%6E%20%6F%70%74%69%6F%6E%73%4F%62%6A%29%0A%09%7B%0A%09%09%69%66%20%28%69%67%6E%6F%72%65%55%6E%64%65%66%69%6E%65%64%50%72%6F%70%73%20%26%26%20%6F%70%74%69%6F%6E%73%4F%62%6A%5B%6F%70%74%69%6F%6E%4E%61%6D%65%5D%20%3D%3D%20%75%6E%64%65%66%69%6E%65%64%29%0A%09%09%09%63%6F%6E%74%69%6E%75%65%3B%0A%09%09%6F%62%6A%5B%6F%70%74%69%6F%6E%4E%61%6D%65%5D%20%3D%20%6F%70%74%69%6F%6E%73%4F%62%6A%5B%6F%70%74%69%6F%6E%4E%61%6D%65%5D%3B%0A%09%7D%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%6F%6E%54%61%62%4D%6F%75%73%65%4F%76%65%72%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%29%0A%7B%0A%09%74%68%69%73%2E%61%64%64%43%6C%61%73%73%4E%61%6D%65%28%74%68%69%73%2E%67%65%74%54%61%62%28%29%2C%20%74%68%69%73%2E%68%6F%76%65%72%43%6C%61%73%73%29%3B%0A%09%72%65%74%75%72%6E%20%66%61%6C%73%65%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%6F%6E%54%61%62%4D%6F%75%73%65%4F%75%74%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%29%0A%7B%0A%09%74%68%69%73%2E%72%65%6D%6F%76%65%43%6C%61%73%73%4E%61%6D%65%28%74%68%69%73%2E%67%65%74%54%61%62%28%29%2C%20%74%68%69%73%2E%68%6F%76%65%72%43%6C%61%73%73%29%3B%0A%09%72%65%74%75%72%6E%20%66%61%6C%73%65%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%6F%70%65%6E%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%49%73%4F%70%65%6E%20%3D%20%74%72%75%65%3B%0A%09%69%66%20%28%74%68%69%73%2E%65%6E%61%62%6C%65%41%6E%69%6D%61%74%69%6F%6E%29%0A%09%7B%0A%09%09%69%66%20%28%74%68%69%73%2E%61%6E%69%6D%61%74%6F%72%29%0A%09%09%09%74%68%69%73%2E%61%6E%69%6D%61%74%6F%72%2E%73%74%6F%70%28%29%3B%0A%09%09%74%68%69%73%2E%61%6E%69%6D%61%74%6F%72%20%3D%20%6E%65%77%20%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%50%61%6E%65%6C%41%6E%69%6D%61%74%6F%72%28%74%68%69%73%2C%20%74%72%75%65%2C%20%7B%20%64%75%72%61%74%69%6F%6E%3A%20%74%68%69%73%2E%64%75%72%61%74%69%6F%6E%2C%20%66%70%73%3A%20%74%68%69%73%2E%66%70%73%2C%20%74%72%61%6E%73%69%74%69%6F%6E%3A%20%74%68%69%73%2E%74%72%61%6E%73%69%74%69%6F%6E%20%7D%29%3B%0A%09%09%74%68%69%73%2E%61%6E%69%6D%61%74%6F%72%2E%73%74%61%72%74%28%29%3B%0A%09%7D%0A%09%65%6C%73%65%0A%09%09%74%68%69%73%2E%73%65%74%44%69%73%70%6C%61%79%28%74%68%69%73%2E%67%65%74%43%6F%6E%74%65%6E%74%28%29%2C%20%22%62%6C%6F%63%6B%22%29%3B%0A%0A%09%74%68%69%73%2E%72%65%6D%6F%76%65%43%6C%61%73%73%4E%61%6D%65%28%74%68%69%73%2E%65%6C%65%6D%65%6E%74%2C%20%74%68%69%73%2E%63%6C%6F%73%65%64%43%6C%61%73%73%29%3B%0A%09%74%68%69%73%2E%61%64%64%43%6C%61%73%73%4E%61%6D%65%28%74%68%69%73%2E%65%6C%65%6D%65%6E%74%2C%20%74%68%69%73%2E%6F%70%65%6E%43%6C%61%73%73%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%63%6C%6F%73%65%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%49%73%4F%70%65%6E%20%3D%20%66%61%6C%73%65%3B%0A%09%69%66%20%28%74%68%69%73%2E%65%6E%61%62%6C%65%41%6E%69%6D%61%74%69%6F%6E%29%0A%09%7B%0A%09%09%69%66%20%28%74%68%69%73%2E%61%6E%69%6D%61%74%6F%72%29%0A%09%09%09%74%68%69%73%2E%61%6E%69%6D%61%74%6F%72%2E%73%74%6F%70%28%29%3B%0A%09%09%74%68%69%73%2E%61%6E%69%6D%61%74%6F%72%20%3D%20%6E%65%77%20%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%50%61%6E%65%6C%41%6E%69%6D%61%74%6F%72%28%74%68%69%73%2C%20%66%61%6C%73%65%2C%20%7B%20%64%75%72%61%74%69%6F%6E%3A%20%74%68%69%73%2E%64%75%72%61%74%69%6F%6E%2C%20%66%70%73%3A%20%74%68%69%73%2E%66%70%73%2C%20%74%72%61%6E%73%69%74%69%6F%6E%3A%20%74%68%69%73%2E%74%72%61%6E%73%69%74%69%6F%6E%20%7D%29%3B%0A%09%09%74%68%69%73%2E%61%6E%69%6D%61%74%6F%72%2E%73%74%61%72%74%28%29%3B%0A%09%7D%0A%09%65%6C%73%65%0A%09%09%74%68%69%73%2E%73%65%74%44%69%73%70%6C%61%79%28%74%68%69%73%2E%67%65%74%43%6F%6E%74%65%6E%74%28%29%2C%20%22%6E%6F%6E%65%22%29%3B%0A%0A%09%74%68%69%73%2E%72%65%6D%6F%76%65%43%6C%61%73%73%4E%61%6D%65%28%74%68%69%73%2E%65%6C%65%6D%65%6E%74%2C%20%74%68%69%73%2E%6F%70%65%6E%43%6C%61%73%73%29%3B%0A%09%74%68%69%73%2E%61%64%64%43%6C%61%73%73%4E%61%6D%65%28%74%68%69%73%2E%65%6C%65%6D%65%6E%74%2C%20%74%68%69%73%2E%63%6C%6F%73%65%64%43%6C%61%73%73%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%6F%6E%54%61%62%43%6C%69%63%6B%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%29%0A%7B%0A%09%69%66%20%28%74%68%69%73%2E%69%73%4F%70%65%6E%28%29%29%0A%09%09%74%68%69%73%2E%63%6C%6F%73%65%28%29%3B%0A%09%65%6C%73%65%0A%09%09%74%68%69%73%2E%6F%70%65%6E%28%29%3B%0A%0A%09%74%68%69%73%2E%66%6F%63%75%73%28%29%3B%0A%0A%09%72%65%74%75%72%6E%20%74%68%69%73%2E%73%74%6F%70%50%72%6F%70%61%67%61%74%69%6F%6E%28%65%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%6F%6E%46%6F%63%75%73%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%29%0A%7B%0A%09%74%68%69%73%2E%68%61%73%46%6F%63%75%73%20%3D%20%74%72%75%65%3B%0A%09%74%68%69%73%2E%61%64%64%43%6C%61%73%73%4E%61%6D%65%28%74%68%69%73%2E%65%6C%65%6D%65%6E%74%2C%20%74%68%69%73%2E%66%6F%63%75%73%65%64%43%6C%61%73%73%29%3B%0A%09%72%65%74%75%72%6E%20%66%61%6C%73%65%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%6F%6E%42%6C%75%72%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%29%0A%7B%0A%09%74%68%69%73%2E%68%61%73%46%6F%63%75%73%20%3D%20%66%61%6C%73%65%3B%0A%09%74%68%69%73%2E%72%65%6D%6F%76%65%43%6C%61%73%73%4E%61%6D%65%28%74%68%69%73%2E%65%6C%65%6D%65%6E%74%2C%20%74%68%69%73%2E%66%6F%63%75%73%65%64%43%6C%61%73%73%29%3B%0A%09%72%65%74%75%72%6E%20%66%61%6C%73%65%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%4B%45%59%5F%55%50%20%3D%20%33%38%3B%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%4B%45%59%5F%44%4F%57%4E%20%3D%20%34%30%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%6F%6E%4B%65%79%44%6F%77%6E%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%29%0A%7B%0A%09%76%61%72%20%6B%65%79%20%3D%20%65%2E%6B%65%79%43%6F%64%65%3B%0A%09%69%66%20%28%21%74%68%69%73%2E%68%61%73%46%6F%63%75%73%20%7C%7C%20%28%6B%65%79%20%21%3D%20%74%68%69%73%2E%6F%70%65%6E%50%61%6E%65%6C%4B%65%79%43%6F%64%65%20%26%26%20%6B%65%79%20%21%3D%20%74%68%69%73%2E%63%6C%6F%73%65%50%61%6E%65%6C%4B%65%79%43%6F%64%65%29%29%0A%09%09%72%65%74%75%72%6E%20%74%72%75%65%3B%0A%0A%09%69%66%20%28%74%68%69%73%2E%69%73%4F%70%65%6E%28%29%20%26%26%20%6B%65%79%20%3D%3D%20%74%68%69%73%2E%63%6C%6F%73%65%50%61%6E%65%6C%4B%65%79%43%6F%64%65%29%0A%09%09%74%68%69%73%2E%63%6C%6F%73%65%28%29%3B%0A%09%65%6C%73%65%20%69%66%20%28%20%6B%65%79%20%3D%3D%20%74%68%69%73%2E%6F%70%65%6E%50%61%6E%65%6C%4B%65%79%43%6F%64%65%29%0A%09%09%74%68%69%73%2E%6F%70%65%6E%28%29%3B%0A%09%0A%09%72%65%74%75%72%6E%20%74%68%69%73%2E%73%74%6F%70%50%72%6F%70%61%67%61%74%69%6F%6E%28%65%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%73%74%6F%70%50%72%6F%70%61%67%61%74%69%6F%6E%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%29%0A%7B%0A%09%69%66%20%28%65%2E%70%72%65%76%65%6E%74%44%65%66%61%75%6C%74%29%20%65%2E%70%72%65%76%65%6E%74%44%65%66%61%75%6C%74%28%29%3B%0A%09%65%6C%73%65%20%65%2E%72%65%74%75%72%6E%56%61%6C%75%65%20%3D%20%66%61%6C%73%65%3B%0A%09%69%66%20%28%65%2E%73%74%6F%70%50%72%6F%70%61%67%61%74%69%6F%6E%29%20%65%2E%73%74%6F%70%50%72%6F%70%61%67%61%74%69%6F%6E%28%29%3B%0A%09%65%6C%73%65%20%65%2E%63%61%6E%63%65%6C%42%75%62%62%6C%65%20%3D%20%74%72%75%65%3B%0A%09%72%65%74%75%72%6E%20%66%61%6C%73%65%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%61%74%74%61%63%68%50%61%6E%65%6C%48%61%6E%64%6C%65%72%73%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%76%61%72%20%74%61%62%20%3D%20%74%68%69%73%2E%67%65%74%54%61%62%28%29%3B%0A%09%69%66%20%28%21%74%61%62%29%0A%09%09%72%65%74%75%72%6E%3B%0A%0A%09%76%61%72%20%73%65%6C%66%20%3D%20%74%68%69%73%3B%0A%09%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%61%64%64%45%76%65%6E%74%4C%69%73%74%65%6E%65%72%28%74%61%62%2C%20%22%63%6C%69%63%6B%22%2C%20%66%75%6E%63%74%69%6F%6E%28%65%29%20%7B%20%72%65%74%75%72%6E%20%73%65%6C%66%2E%6F%6E%54%61%62%43%6C%69%63%6B%28%65%29%3B%20%7D%2C%20%66%61%6C%73%65%29%3B%0A%09%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%61%64%64%45%76%65%6E%74%4C%69%73%74%65%6E%65%72%28%74%61%62%2C%20%22%6D%6F%75%73%65%6F%76%65%72%22%2C%20%66%75%6E%63%74%69%6F%6E%28%65%29%20%7B%20%72%65%74%75%72%6E%20%73%65%6C%66%2E%6F%6E%54%61%62%4D%6F%75%73%65%4F%76%65%72%28%65%29%3B%20%7D%2C%20%66%61%6C%73%65%29%3B%0A%09%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%61%64%64%45%76%65%6E%74%4C%69%73%74%65%6E%65%72%28%74%61%62%2C%20%22%6D%6F%75%73%65%6F%75%74%22%2C%20%66%75%6E%63%74%69%6F%6E%28%65%29%20%7B%20%72%65%74%75%72%6E%20%73%65%6C%66%2E%6F%6E%54%61%62%4D%6F%75%73%65%4F%75%74%28%65%29%3B%20%7D%2C%20%66%61%6C%73%65%29%3B%0A%0A%09%69%66%20%28%74%68%69%73%2E%65%6E%61%62%6C%65%4B%65%79%62%6F%61%72%64%4E%61%76%69%67%61%74%69%6F%6E%29%0A%09%7B%0A%09%09%2F%2F%20%58%58%58%3A%20%49%45%20%64%6F%65%73%6E%27%74%20%61%6C%6C%6F%77%20%74%68%65%20%73%65%74%74%69%6E%67%20%6F%66%20%74%61%62%69%6E%64%65%78%20%64%79%6E%61%6D%69%63%61%6C%6C%79%2E%20%54%68%69%73%20%6D%65%61%6E%73%20%77%65%20%63%61%6E%27%74%0A%09%09%2F%2F%20%72%65%6C%79%20%6F%6E%20%61%64%64%69%6E%67%20%74%68%65%20%74%61%62%69%6E%64%65%78%20%61%74%74%72%69%62%75%74%65%20%69%66%20%69%74%20%69%73%20%6D%69%73%73%69%6E%67%20%74%6F%20%65%6E%61%62%6C%65%20%6B%65%79%62%6F%61%72%64%20%6E%61%76%69%67%61%74%69%6F%6E%0A%09%09%2F%2F%20%62%79%20%64%65%66%61%75%6C%74%2E%0A%0A%09%09%2F%2F%20%46%69%6E%64%20%74%68%65%20%66%69%72%73%74%20%65%6C%65%6D%65%6E%74%20%77%69%74%68%69%6E%20%74%68%65%20%74%61%62%20%63%6F%6E%74%61%69%6E%65%72%20%74%68%61%74%20%68%61%73%20%61%20%74%61%62%69%6E%64%65%78%20%6F%72%20%74%68%65%20%66%69%72%73%74%0A%09%09%2F%2F%20%61%6E%63%68%6F%72%20%74%61%67%2E%0A%09%09%0A%09%09%76%61%72%20%74%61%62%49%6E%64%65%78%45%6C%65%20%3D%20%6E%75%6C%6C%3B%0A%09%09%76%61%72%20%74%61%62%41%6E%63%68%6F%72%45%6C%65%20%3D%20%6E%75%6C%6C%3B%0A%0A%09%09%74%68%69%73%2E%70%72%65%6F%72%64%65%72%54%72%61%76%65%72%73%61%6C%28%74%61%62%2C%20%66%75%6E%63%74%69%6F%6E%28%6E%6F%64%65%29%20%7B%0A%09%09%09%69%66%20%28%6E%6F%64%65%2E%6E%6F%64%65%54%79%70%65%20%3D%3D%20%31%20%2F%2A%20%4E%4F%44%45%2E%45%4C%45%4D%45%4E%54%5F%4E%4F%44%45%20%2A%2F%29%0A%09%09%09%7B%0A%09%09%09%09%76%61%72%20%74%61%62%49%6E%64%65%78%41%74%74%72%20%3D%20%74%61%62%2E%61%74%74%72%69%62%75%74%65%73%2E%67%65%74%4E%61%6D%65%64%49%74%65%6D%28%22%74%61%62%69%6E%64%65%78%22%29%3B%0A%09%09%09%09%69%66%20%28%74%61%62%49%6E%64%65%78%41%74%74%72%29%0A%09%09%09%09%7B%0A%09%09%09%09%09%74%61%62%49%6E%64%65%78%45%6C%65%20%3D%20%6E%6F%64%65%3B%0A%09%09%09%09%09%72%65%74%75%72%6E%20%74%72%75%65%3B%0A%09%09%09%09%7D%0A%09%09%09%09%69%66%20%28%21%74%61%62%41%6E%63%68%6F%72%45%6C%65%20%26%26%20%6E%6F%64%65%2E%6E%6F%64%65%4E%61%6D%65%2E%74%6F%4C%6F%77%65%72%43%61%73%65%28%29%20%3D%3D%20%22%61%22%29%0A%09%09%09%09%09%74%61%62%41%6E%63%68%6F%72%45%6C%65%20%3D%20%6E%6F%64%65%3B%0A%09%09%09%7D%0A%09%09%09%72%65%74%75%72%6E%20%66%61%6C%73%65%3B%0A%09%09%7D%29%3B%0A%0A%09%09%69%66%20%28%74%61%62%49%6E%64%65%78%45%6C%65%29%0A%09%09%09%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%20%3D%20%74%61%62%49%6E%64%65%78%45%6C%65%3B%0A%09%09%65%6C%73%65%20%69%66%20%28%74%61%62%41%6E%63%68%6F%72%45%6C%65%29%0A%09%09%09%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%20%3D%20%74%61%62%41%6E%63%68%6F%72%45%6C%65%3B%0A%0A%09%09%69%66%20%28%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%29%0A%09%09%7B%0A%09%09%09%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%61%64%64%45%76%65%6E%74%4C%69%73%74%65%6E%65%72%28%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%2C%20%22%66%6F%63%75%73%22%2C%20%66%75%6E%63%74%69%6F%6E%28%65%29%20%7B%20%72%65%74%75%72%6E%20%73%65%6C%66%2E%6F%6E%46%6F%63%75%73%28%65%29%3B%20%7D%2C%20%66%61%6C%73%65%29%3B%0A%09%09%09%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%61%64%64%45%76%65%6E%74%4C%69%73%74%65%6E%65%72%28%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%2C%20%22%62%6C%75%72%22%2C%20%66%75%6E%63%74%69%6F%6E%28%65%29%20%7B%20%72%65%74%75%72%6E%20%73%65%6C%66%2E%6F%6E%42%6C%75%72%28%65%29%3B%20%7D%2C%20%66%61%6C%73%65%29%3B%0A%09%09%09%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%61%64%64%45%76%65%6E%74%4C%69%73%74%65%6E%65%72%28%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%2C%20%22%6B%65%79%64%6F%77%6E%22%2C%20%66%75%6E%63%74%69%6F%6E%28%65%29%20%7B%20%72%65%74%75%72%6E%20%73%65%6C%66%2E%6F%6E%4B%65%79%44%6F%77%6E%28%65%29%3B%20%7D%2C%20%66%61%6C%73%65%29%3B%0A%09%09%7D%0A%09%7D%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%61%64%64%45%76%65%6E%74%4C%69%73%74%65%6E%65%72%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%6D%65%6E%74%2C%20%65%76%65%6E%74%54%79%70%65%2C%20%68%61%6E%64%6C%65%72%2C%20%63%61%70%74%75%72%65%29%0A%7B%0A%09%74%72%79%0A%09%7B%0A%09%09%69%66%20%28%65%6C%65%6D%65%6E%74%2E%61%64%64%45%76%65%6E%74%4C%69%73%74%65%6E%65%72%29%0A%09%09%09%65%6C%65%6D%65%6E%74%2E%61%64%64%45%76%65%6E%74%4C%69%73%74%65%6E%65%72%28%65%76%65%6E%74%54%79%70%65%2C%20%68%61%6E%64%6C%65%72%2C%20%63%61%70%74%75%72%65%29%3B%0A%09%09%65%6C%73%65%20%69%66%20%28%65%6C%65%6D%65%6E%74%2E%61%74%74%61%63%68%45%76%65%6E%74%29%0A%09%09%09%65%6C%65%6D%65%6E%74%2E%61%74%74%61%63%68%45%76%65%6E%74%28%22%6F%6E%22%20%2B%20%65%76%65%6E%74%54%79%70%65%2C%20%68%61%6E%64%6C%65%72%29%3B%0A%09%7D%0A%09%63%61%74%63%68%20%28%65%29%20%7B%7D%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%70%72%65%6F%72%64%65%72%54%72%61%76%65%72%73%61%6C%20%3D%20%66%75%6E%63%74%69%6F%6E%28%72%6F%6F%74%2C%20%66%75%6E%63%29%0A%7B%0A%09%76%61%72%20%73%74%6F%70%54%72%61%76%65%72%73%61%6C%20%3D%20%66%61%6C%73%65%3B%0A%09%69%66%20%28%72%6F%6F%74%29%0A%09%7B%0A%09%09%73%74%6F%70%54%72%61%76%65%72%73%61%6C%20%3D%20%66%75%6E%63%28%72%6F%6F%74%29%3B%0A%09%09%69%66%20%28%72%6F%6F%74%2E%68%61%73%43%68%69%6C%64%4E%6F%64%65%73%28%29%29%0A%09%09%7B%0A%09%09%09%76%61%72%20%63%68%69%6C%64%20%3D%20%72%6F%6F%74%2E%66%69%72%73%74%43%68%69%6C%64%3B%0A%09%09%09%77%68%69%6C%65%20%28%21%73%74%6F%70%54%72%61%76%65%72%73%61%6C%20%26%26%20%63%68%69%6C%64%29%0A%09%09%09%7B%0A%09%09%09%09%73%74%6F%70%54%72%61%76%65%72%73%61%6C%20%3D%20%74%68%69%73%2E%70%72%65%6F%72%64%65%72%54%72%61%76%65%72%73%61%6C%28%63%68%69%6C%64%2C%20%66%75%6E%63%29%3B%0A%09%09%09%09%74%72%79%20%7B%20%63%68%69%6C%64%20%3D%20%63%68%69%6C%64%2E%6E%65%78%74%53%69%62%6C%69%6E%67%3B%20%7D%20%63%61%74%63%68%20%28%65%29%20%7B%20%63%68%69%6C%64%20%3D%20%6E%75%6C%6C%3B%20%7D%0A%09%09%09%7D%0A%09%09%7D%0A%09%7D%0A%09%72%65%74%75%72%6E%20%73%74%6F%70%54%72%61%76%65%72%73%61%6C%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%61%74%74%61%63%68%42%65%68%61%76%69%6F%72%73%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%76%61%72%20%70%61%6E%65%6C%20%3D%20%74%68%69%73%2E%65%6C%65%6D%65%6E%74%3B%0A%09%76%61%72%20%74%61%62%20%3D%20%74%68%69%73%2E%67%65%74%54%61%62%28%29%3B%0A%09%76%61%72%20%63%6F%6E%74%65%6E%74%20%3D%20%74%68%69%73%2E%67%65%74%43%6F%6E%74%65%6E%74%28%29%3B%0A%0A%09%69%66%20%28%74%68%69%73%2E%63%6F%6E%74%65%6E%74%49%73%4F%70%65%6E%20%7C%7C%20%74%68%69%73%2E%68%61%73%43%6C%61%73%73%4E%61%6D%65%28%70%61%6E%65%6C%2C%20%74%68%69%73%2E%6F%70%65%6E%43%6C%61%73%73%29%29%0A%09%7B%0A%09%09%74%68%69%73%2E%61%64%64%43%6C%61%73%73%4E%61%6D%65%28%70%61%6E%65%6C%2C%20%74%68%69%73%2E%6F%70%65%6E%43%6C%61%73%73%29%3B%0A%09%09%74%68%69%73%2E%72%65%6D%6F%76%65%43%6C%61%73%73%4E%61%6D%65%28%70%61%6E%65%6C%2C%20%74%68%69%73%2E%63%6C%6F%73%65%64%43%6C%61%73%73%29%3B%0A%09%09%74%68%69%73%2E%73%65%74%44%69%73%70%6C%61%79%28%63%6F%6E%74%65%6E%74%2C%20%22%62%6C%6F%63%6B%22%29%3B%0A%09%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%49%73%4F%70%65%6E%20%3D%20%74%72%75%65%3B%0A%09%7D%0A%09%65%6C%73%65%0A%09%7B%0A%09%09%74%68%69%73%2E%72%65%6D%6F%76%65%43%6C%61%73%73%4E%61%6D%65%28%70%61%6E%65%6C%2C%20%74%68%69%73%2E%6F%70%65%6E%43%6C%61%73%73%29%3B%0A%09%09%74%68%69%73%2E%61%64%64%43%6C%61%73%73%4E%61%6D%65%28%70%61%6E%65%6C%2C%20%74%68%69%73%2E%63%6C%6F%73%65%64%43%6C%61%73%73%29%3B%0A%09%09%74%68%69%73%2E%73%65%74%44%69%73%70%6C%61%79%28%63%6F%6E%74%65%6E%74%2C%20%22%6E%6F%6E%65%22%29%3B%0A%09%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%49%73%4F%70%65%6E%20%3D%20%66%61%6C%73%65%3B%0A%09%7D%0A%0A%09%74%68%69%73%2E%61%74%74%61%63%68%50%61%6E%65%6C%48%61%6E%64%6C%65%72%73%28%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%54%61%62%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%72%65%74%75%72%6E%20%74%68%69%73%2E%67%65%74%45%6C%65%6D%65%6E%74%43%68%69%6C%64%72%65%6E%28%74%68%69%73%2E%65%6C%65%6D%65%6E%74%29%5B%30%5D%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%43%6F%6E%74%65%6E%74%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%72%65%74%75%72%6E%20%74%68%69%73%2E%67%65%74%45%6C%65%6D%65%6E%74%43%68%69%6C%64%72%65%6E%28%74%68%69%73%2E%65%6C%65%6D%65%6E%74%29%5B%31%5D%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%69%73%4F%70%65%6E%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%72%65%74%75%72%6E%20%74%68%69%73%2E%63%6F%6E%74%65%6E%74%49%73%4F%70%65%6E%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%45%6C%65%6D%65%6E%74%43%68%69%6C%64%72%65%6E%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%6D%65%6E%74%29%0A%7B%0A%09%76%61%72%20%63%68%69%6C%64%72%65%6E%20%3D%20%5B%5D%3B%0A%09%76%61%72%20%63%68%69%6C%64%20%3D%20%65%6C%65%6D%65%6E%74%2E%66%69%72%73%74%43%68%69%6C%64%3B%0A%09%77%68%69%6C%65%20%28%63%68%69%6C%64%29%0A%09%7B%0A%09%09%69%66%20%28%63%68%69%6C%64%2E%6E%6F%64%65%54%79%70%65%20%3D%3D%20%31%20%2F%2A%20%4E%6F%64%65%2E%45%4C%45%4D%45%4E%54%5F%4E%4F%44%45%20%2A%2F%29%0A%09%09%09%63%68%69%6C%64%72%65%6E%2E%70%75%73%68%28%63%68%69%6C%64%29%3B%0A%09%09%63%68%69%6C%64%20%3D%20%63%68%69%6C%64%2E%6E%65%78%74%53%69%62%6C%69%6E%67%3B%0A%09%7D%0A%09%72%65%74%75%72%6E%20%63%68%69%6C%64%72%65%6E%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%66%6F%63%75%73%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%69%66%20%28%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%20%26%26%20%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%2E%66%6F%63%75%73%29%0A%09%09%74%68%69%73%2E%66%6F%63%75%73%45%6C%65%6D%65%6E%74%2E%66%6F%63%75%73%28%29%3B%0A%7D%3B%0A%0A%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%50%61%6E%65%6C%41%6E%69%6D%61%74%6F%72%20%3D%20%66%75%6E%63%74%69%6F%6E%28%70%61%6E%65%6C%2C%20%64%6F%4F%70%65%6E%2C%20%6F%70%74%73%29%0A%7B%0A%09%74%68%69%73%2E%74%69%6D%65%72%20%3D%20%6E%75%6C%6C%3B%0A%09%74%68%69%73%2E%69%6E%74%65%72%76%61%6C%20%3D%20%30%3B%0A%0A%09%74%68%69%73%2E%66%70%73%20%3D%20%36%30%3B%0A%09%74%68%69%73%2E%64%75%72%61%74%69%6F%6E%20%3D%20%35%30%30%3B%0A%09%74%68%69%73%2E%73%74%61%72%74%54%69%6D%65%20%3D%20%30%3B%0A%0A%09%74%68%69%73%2E%74%72%61%6E%73%69%74%69%6F%6E%20%3D%20%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%50%61%6E%65%6C%41%6E%69%6D%61%74%6F%72%2E%64%65%66%61%75%6C%74%54%72%61%6E%73%69%74%69%6F%6E%3B%0A%0A%09%74%68%69%73%2E%6F%6E%43%6F%6D%70%6C%65%74%65%20%3D%20%6E%75%6C%6C%3B%0A%0A%09%74%68%69%73%2E%70%61%6E%65%6C%20%3D%20%70%61%6E%65%6C%3B%0A%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%20%3D%20%70%61%6E%65%6C%2E%67%65%74%43%6F%6E%74%65%6E%74%28%29%3B%0A%09%74%68%69%73%2E%64%6F%4F%70%65%6E%20%3D%20%64%6F%4F%70%65%6E%3B%0A%0A%09%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%73%65%74%4F%70%74%69%6F%6E%73%28%74%68%69%73%2C%20%6F%70%74%73%2C%20%74%72%75%65%29%3B%0A%0A%09%74%68%69%73%2E%69%6E%74%65%72%76%61%6C%20%3D%20%4D%61%74%68%2E%66%6C%6F%6F%72%28%31%30%30%30%20%2F%20%74%68%69%73%2E%66%70%73%29%3B%0A%0A%09%76%61%72%20%63%20%3D%20%74%68%69%73%2E%63%6F%6E%74%65%6E%74%3B%0A%0A%09%76%61%72%20%63%75%72%48%65%69%67%68%74%20%3D%20%63%2E%6F%66%66%73%65%74%48%65%69%67%68%74%20%3F%20%63%2E%6F%66%66%73%65%74%48%65%69%67%68%74%20%3A%20%30%3B%0A%09%74%68%69%73%2E%66%72%6F%6D%48%65%69%67%68%74%20%3D%20%28%64%6F%4F%70%65%6E%20%26%26%20%63%2E%73%74%79%6C%65%2E%64%69%73%70%6C%61%79%20%3D%3D%20%22%6E%6F%6E%65%22%29%20%3F%20%30%20%3A%20%63%75%72%48%65%69%67%68%74%3B%0A%0A%09%69%66%20%28%21%64%6F%4F%70%65%6E%29%0A%09%09%74%68%69%73%2E%74%6F%48%65%69%67%68%74%20%3D%20%30%3B%0A%09%65%6C%73%65%0A%09%7B%0A%09%09%69%66%20%28%63%2E%73%74%79%6C%65%2E%64%69%73%70%6C%61%79%20%3D%3D%20%22%6E%6F%6E%65%22%29%0A%09%09%7B%0A%09%09%09%2F%2F%20%54%68%65%20%63%6F%6E%74%65%6E%74%20%61%72%65%61%20%69%73%20%6E%6F%74%20%64%69%73%70%6C%61%79%65%64%20%73%6F%20%69%6E%20%6F%72%64%65%72%20%74%6F%20%63%61%6C%63%75%6C%61%74%65%20%74%68%65%20%65%78%74%65%6E%74%0A%09%09%09%2F%2F%20%6F%66%20%74%68%65%20%63%6F%6E%74%65%6E%74%20%69%6E%73%69%64%65%20%69%74%2C%20%77%65%20%68%61%76%65%20%74%6F%20%73%65%74%20%69%74%73%20%64%69%73%70%6C%61%79%20%74%6F%20%62%6C%6F%63%6B%2E%0A%0A%09%09%09%63%2E%73%74%79%6C%65%2E%76%69%73%69%62%69%6C%69%74%79%20%3D%20%22%68%69%64%64%65%6E%22%3B%0A%09%09%09%63%2E%73%74%79%6C%65%2E%64%69%73%70%6C%61%79%20%3D%20%22%62%6C%6F%63%6B%22%3B%0A%09%09%7D%0A%0A%09%09%2F%2F%20%43%6C%65%61%72%20%74%68%65%20%68%65%69%67%68%74%20%70%72%6F%70%65%72%74%79%20%73%6F%20%77%65%20%63%61%6E%20%63%61%6C%63%75%6C%61%74%65%0A%09%09%2F%2F%20%74%68%65%20%66%75%6C%6C%20%68%65%69%67%68%74%20%6F%66%20%74%68%65%20%63%6F%6E%74%65%6E%74%20%77%65%20%61%72%65%20%67%6F%69%6E%67%20%74%6F%20%73%68%6F%77%2E%0A%0A%09%09%63%2E%73%74%79%6C%65%2E%68%65%69%67%68%74%20%3D%20%22%22%3B%0A%09%09%74%68%69%73%2E%74%6F%48%65%69%67%68%74%20%3D%20%63%2E%6F%66%66%73%65%74%48%65%69%67%68%74%3B%0A%09%7D%0A%0A%09%74%68%69%73%2E%64%69%73%74%61%6E%63%65%20%3D%20%74%68%69%73%2E%74%6F%48%65%69%67%68%74%20%2D%20%74%68%69%73%2E%66%72%6F%6D%48%65%69%67%68%74%3B%0A%09%74%68%69%73%2E%6F%76%65%72%66%6C%6F%77%20%3D%20%63%2E%73%74%79%6C%65%2E%6F%76%65%72%66%6C%6F%77%3B%0A%0A%09%63%2E%73%74%79%6C%65%2E%68%65%69%67%68%74%20%3D%20%74%68%69%73%2E%66%72%6F%6D%48%65%69%67%68%74%20%2B%20%22%70%78%22%3B%0A%09%63%2E%73%74%79%6C%65%2E%76%69%73%69%62%69%6C%69%74%79%20%3D%20%22%76%69%73%69%62%6C%65%22%3B%0A%09%63%2E%73%74%79%6C%65%2E%6F%76%65%72%66%6C%6F%77%20%3D%20%22%68%69%64%64%65%6E%22%3B%0A%09%63%2E%73%74%79%6C%65%2E%64%69%73%70%6C%61%79%20%3D%20%22%62%6C%6F%63%6B%22%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%50%61%6E%65%6C%41%6E%69%6D%61%74%6F%72%2E%64%65%66%61%75%6C%74%54%72%61%6E%73%69%74%69%6F%6E%20%3D%20%66%75%6E%63%74%69%6F%6E%28%74%69%6D%65%2C%20%62%65%67%69%6E%2C%20%66%69%6E%69%73%68%2C%20%64%75%72%61%74%69%6F%6E%29%20%7B%20%74%69%6D%65%20%2F%3D%20%64%75%72%61%74%69%6F%6E%3B%20%72%65%74%75%72%6E%20%62%65%67%69%6E%20%2B%20%28%28%32%20%2D%20%74%69%6D%65%29%20%2A%20%74%69%6D%65%20%2A%20%66%69%6E%69%73%68%29%3B%20%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%50%61%6E%65%6C%41%6E%69%6D%61%74%6F%72%2E%70%72%6F%74%6F%74%79%70%65%2E%73%74%61%72%74%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%76%61%72%20%73%65%6C%66%20%3D%20%74%68%69%73%3B%0A%09%74%68%69%73%2E%73%74%61%72%74%54%69%6D%65%20%3D%20%28%6E%65%77%20%44%61%74%65%29%2E%67%65%74%54%69%6D%65%28%29%3B%0A%09%74%68%69%73%2E%74%69%6D%65%72%20%3D%20%73%65%74%54%69%6D%65%6F%75%74%28%66%75%6E%63%74%69%6F%6E%28%29%20%7B%20%73%65%6C%66%2E%73%74%65%70%41%6E%69%6D%61%74%69%6F%6E%28%29%3B%20%7D%2C%20%74%68%69%73%2E%69%6E%74%65%72%76%61%6C%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%50%61%6E%65%6C%41%6E%69%6D%61%74%6F%72%2E%70%72%6F%74%6F%74%79%70%65%2E%73%74%6F%70%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%69%66%20%28%74%68%69%73%2E%74%69%6D%65%72%29%0A%09%7B%0A%09%09%63%6C%65%61%72%54%69%6D%65%6F%75%74%28%74%68%69%73%2E%74%69%6D%65%72%29%3B%0A%0A%09%09%2F%2F%20%49%66%20%77%65%27%72%65%20%6B%69%6C%6C%69%6E%67%20%74%68%65%20%74%69%6D%65%72%2C%20%72%65%73%74%6F%72%65%20%74%68%65%20%6F%76%65%72%66%6C%6F%77%20%70%72%6F%70%65%72%74%79%2E%0A%0A%09%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%2E%73%74%79%6C%65%2E%6F%76%65%72%66%6C%6F%77%20%3D%20%74%68%69%73%2E%6F%76%65%72%66%6C%6F%77%3B%0A%09%7D%0A%0A%09%74%68%69%73%2E%74%69%6D%65%72%20%3D%20%6E%75%6C%6C%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%50%61%6E%65%6C%41%6E%69%6D%61%74%6F%72%2E%70%72%6F%74%6F%74%79%70%65%2E%73%74%65%70%41%6E%69%6D%61%74%69%6F%6E%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%76%61%72%20%63%75%72%54%69%6D%65%20%3D%20%28%6E%65%77%20%44%61%74%65%29%2E%67%65%74%54%69%6D%65%28%29%3B%0A%09%76%61%72%20%65%6C%61%70%73%65%64%54%69%6D%65%20%3D%20%63%75%72%54%69%6D%65%20%2D%20%74%68%69%73%2E%73%74%61%72%74%54%69%6D%65%3B%0A%0A%09%69%66%20%28%65%6C%61%70%73%65%64%54%69%6D%65%20%3E%3D%20%74%68%69%73%2E%64%75%72%61%74%69%6F%6E%29%0A%09%7B%0A%09%09%69%66%20%28%21%74%68%69%73%2E%64%6F%4F%70%65%6E%29%0A%09%09%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%2E%73%74%79%6C%65%2E%64%69%73%70%6C%61%79%20%3D%20%22%6E%6F%6E%65%22%3B%0A%09%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%2E%73%74%79%6C%65%2E%6F%76%65%72%66%6C%6F%77%20%3D%20%74%68%69%73%2E%6F%76%65%72%66%6C%6F%77%3B%0A%09%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%2E%73%74%79%6C%65%2E%68%65%69%67%68%74%20%3D%20%74%68%69%73%2E%74%6F%48%65%69%67%68%74%20%2B%20%22%70%78%22%3B%0A%09%09%69%66%20%28%74%68%69%73%2E%6F%6E%43%6F%6D%70%6C%65%74%65%29%0A%09%09%09%74%68%69%73%2E%6F%6E%43%6F%6D%70%6C%65%74%65%28%29%3B%0A%09%09%72%65%74%75%72%6E%3B%0A%09%7D%0A%0A%09%76%61%72%20%68%74%20%3D%20%74%68%69%73%2E%74%72%61%6E%73%69%74%69%6F%6E%28%65%6C%61%70%73%65%64%54%69%6D%65%2C%20%74%68%69%73%2E%66%72%6F%6D%48%65%69%67%68%74%2C%20%74%68%69%73%2E%64%69%73%74%61%6E%63%65%2C%20%74%68%69%73%2E%64%75%72%61%74%69%6F%6E%29%3B%0A%0A%09%74%68%69%73%2E%63%6F%6E%74%65%6E%74%2E%73%74%79%6C%65%2E%68%65%69%67%68%74%20%3D%20%28%28%68%74%20%3C%20%30%29%20%3F%20%30%20%3A%20%68%74%29%20%2B%20%22%70%78%22%3B%0A%0A%09%76%61%72%20%73%65%6C%66%20%3D%20%74%68%69%73%3B%0A%09%74%68%69%73%2E%74%69%6D%65%72%20%3D%20%73%65%74%54%69%6D%65%6F%75%74%28%66%75%6E%63%74%69%6F%6E%28%29%20%7B%20%73%65%6C%66%2E%73%74%65%70%41%6E%69%6D%61%74%69%6F%6E%28%29%3B%20%7D%2C%20%74%68%69%73%2E%69%6E%74%65%72%76%61%6C%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%6D%65%6E%74%2C%20%6F%70%74%73%29%0A%7B%0A%09%74%68%69%73%2E%65%6C%65%6D%65%6E%74%20%3D%20%74%68%69%73%2E%67%65%74%45%6C%65%6D%65%6E%74%28%65%6C%65%6D%65%6E%74%29%3B%0A%09%74%68%69%73%2E%6F%70%74%73%20%3D%20%6F%70%74%73%3B%0A%0A%09%74%68%69%73%2E%61%74%74%61%63%68%42%65%68%61%76%69%6F%72%73%28%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%73%65%74%4F%70%74%69%6F%6E%73%20%3D%20%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%73%65%74%4F%70%74%69%6F%6E%73%3B%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%45%6C%65%6D%65%6E%74%20%3D%20%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%45%6C%65%6D%65%6E%74%3B%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%45%6C%65%6D%65%6E%74%43%68%69%6C%64%72%65%6E%20%3D%20%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%45%6C%65%6D%65%6E%74%43%68%69%6C%64%72%65%6E%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%73%65%74%45%6C%65%6D%65%6E%74%57%69%64%67%65%74%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%6D%65%6E%74%2C%20%77%69%64%67%65%74%29%0A%7B%0A%09%69%66%20%28%21%65%6C%65%6D%65%6E%74%20%7C%7C%20%21%77%69%64%67%65%74%29%0A%09%09%72%65%74%75%72%6E%3B%0A%09%69%66%20%28%21%65%6C%65%6D%65%6E%74%2E%73%70%72%79%29%0A%09%09%65%6C%65%6D%65%6E%74%2E%73%70%72%79%20%3D%20%6E%65%77%20%4F%62%6A%65%63%74%3B%0A%09%65%6C%65%6D%65%6E%74%2E%73%70%72%79%2E%63%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%20%3D%20%77%69%64%67%65%74%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%45%6C%65%6D%65%6E%74%57%69%64%67%65%74%20%3D%20%66%75%6E%63%74%69%6F%6E%28%65%6C%65%6D%65%6E%74%29%0A%7B%0A%09%72%65%74%75%72%6E%20%28%65%6C%65%6D%65%6E%74%20%26%26%20%65%6C%65%6D%65%6E%74%2E%73%70%72%79%20%26%26%20%65%6C%65%6D%65%6E%74%2E%73%70%72%79%2E%63%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%29%20%3F%20%65%6C%65%6D%65%6E%74%2E%73%70%72%79%2E%63%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%20%3A%20%6E%75%6C%6C%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%50%61%6E%65%6C%73%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%69%66%20%28%21%74%68%69%73%2E%65%6C%65%6D%65%6E%74%29%0A%09%09%72%65%74%75%72%6E%20%5B%5D%3B%0A%09%72%65%74%75%72%6E%20%74%68%69%73%2E%67%65%74%45%6C%65%6D%65%6E%74%43%68%69%6C%64%72%65%6E%28%74%68%69%73%2E%65%6C%65%6D%65%6E%74%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%67%65%74%50%61%6E%65%6C%20%3D%20%66%75%6E%63%74%69%6F%6E%28%70%61%6E%65%6C%49%6E%64%65%78%29%0A%7B%0A%09%72%65%74%75%72%6E%20%74%68%69%73%2E%67%65%74%50%61%6E%65%6C%73%28%29%5B%70%61%6E%65%6C%49%6E%64%65%78%5D%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%61%74%74%61%63%68%42%65%68%61%76%69%6F%72%73%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%69%66%20%28%21%74%68%69%73%2E%65%6C%65%6D%65%6E%74%29%0A%09%09%72%65%74%75%72%6E%3B%0A%0A%09%76%61%72%20%63%70%61%6E%65%6C%73%20%3D%20%74%68%69%73%2E%67%65%74%50%61%6E%65%6C%73%28%29%3B%0A%09%76%61%72%20%6E%75%6D%43%50%61%6E%65%6C%73%20%3D%20%63%70%61%6E%65%6C%73%2E%6C%65%6E%67%74%68%3B%0A%09%66%6F%72%20%28%76%61%72%20%69%20%3D%20%30%3B%20%69%20%3C%20%6E%75%6D%43%50%61%6E%65%6C%73%3B%20%69%2B%2B%29%0A%09%7B%0A%09%09%76%61%72%20%63%70%61%6E%65%6C%20%3D%20%63%70%61%6E%65%6C%73%5B%69%5D%3B%0A%09%09%74%68%69%73%2E%73%65%74%45%6C%65%6D%65%6E%74%57%69%64%67%65%74%28%63%70%61%6E%65%6C%2C%20%6E%65%77%20%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%28%63%70%61%6E%65%6C%2C%20%74%68%69%73%2E%6F%70%74%73%29%29%3B%0A%09%7D%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%6F%70%65%6E%50%61%6E%65%6C%20%3D%20%66%75%6E%63%74%69%6F%6E%28%70%61%6E%65%6C%49%6E%64%65%78%29%0A%7B%0A%09%76%61%72%20%77%20%3D%20%74%68%69%73%2E%67%65%74%45%6C%65%6D%65%6E%74%57%69%64%67%65%74%28%74%68%69%73%2E%67%65%74%50%61%6E%65%6C%28%70%61%6E%65%6C%49%6E%64%65%78%29%29%3B%0A%09%69%66%20%28%77%20%26%26%20%21%77%2E%69%73%4F%70%65%6E%28%29%29%0A%09%09%77%2E%6F%70%65%6E%28%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%63%6C%6F%73%65%50%61%6E%65%6C%20%3D%20%66%75%6E%63%74%69%6F%6E%28%70%61%6E%65%6C%49%6E%64%65%78%29%0A%7B%0A%09%76%61%72%20%77%20%3D%20%74%68%69%73%2E%67%65%74%45%6C%65%6D%65%6E%74%57%69%64%67%65%74%28%74%68%69%73%2E%67%65%74%50%61%6E%65%6C%28%70%61%6E%65%6C%49%6E%64%65%78%29%29%3B%0A%09%69%66%20%28%77%20%26%26%20%77%2E%69%73%4F%70%65%6E%28%29%29%0A%09%09%77%2E%63%6C%6F%73%65%28%29%3B%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%6F%70%65%6E%41%6C%6C%50%61%6E%65%6C%73%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%76%61%72%20%63%70%61%6E%65%6C%73%20%3D%20%74%68%69%73%2E%67%65%74%50%61%6E%65%6C%73%28%29%3B%0A%09%76%61%72%20%6E%75%6D%43%50%61%6E%65%6C%73%20%3D%20%63%70%61%6E%65%6C%73%2E%6C%65%6E%67%74%68%3B%0A%09%66%6F%72%20%28%76%61%72%20%69%20%3D%20%30%3B%20%69%20%3C%20%6E%75%6D%43%50%61%6E%65%6C%73%3B%20%69%2B%2B%29%0A%09%7B%0A%09%09%76%61%72%20%77%20%3D%20%74%68%69%73%2E%67%65%74%45%6C%65%6D%65%6E%74%57%69%64%67%65%74%28%63%70%61%6E%65%6C%73%5B%69%5D%29%3B%0A%09%09%69%66%20%28%77%20%26%26%20%21%77%2E%69%73%4F%70%65%6E%28%29%29%0A%09%09%09%77%2E%6F%70%65%6E%28%29%3B%0A%09%7D%0A%7D%3B%0A%0A%53%70%72%79%2E%57%69%64%67%65%74%2E%43%6F%6C%6C%61%70%73%69%62%6C%65%50%61%6E%65%6C%47%72%6F%75%70%2E%70%72%6F%74%6F%74%79%70%65%2E%63%6C%6F%73%65%41%6C%6C%50%61%6E%65%6C%73%20%3D%20%66%75%6E%63%74%69%6F%6E%28%29%0A%7B%0A%09%76%61%72%20%63%70%61%6E%65%6C%73%20%3D%20%74%68%69%73%2E%67%65%74%50%61%6E%65%6C%73%28%29%3B%0A%09%76%61%72%20%6E%75%6D%43%50%61%6E%65%6C%73%20%3D%20%63%70%61%6E%65%6C%73%2E%6C%65%6E%67%74%68%3B%0A%09%66%6F%72%20%28%76%61%72%20%69%20%3D%20%30%3B%20%69%20%3C%20%6E%75%6D%43%50%61%6E%65%6C%73%3B%20%69%2B%2B%29%0A%09%7B%0A%09%09%76%61%72%20%77%20%3D%20%74%68%69%73%2E%67%65%74%45%6C%65%6D%65%6E%74%57%69%64%67%65%74%28%63%70%61%6E%65%6C%73%5B%69%5D%29%3B%0A%09%09%69%66%20%28%77%20%26%26%20%77%2E%69%73%4F%70%65%6E%28%29%29%0A%09%09%09%77%2E%63%6C%6F%73%65%28%29%3B%0A%09%7D%0A%7D%3B%0A%0A%7D%29%28%29%3B%20%2F%2F%20%45%6E%64%53%70%72%79%43%6F%6D%70%6F%6E%65%6E%74%0A'));
//-->
</Script>

Já o CSS pode ser editado.

Código:
@charset "UTF-8";

/* SpryCollapsiblePanel.css - version 0.5 - Spry Pre-Release 1.6.1 */

/* Copyright (c) 2006. Adobe Systems Incorporated. All rights reserved. */

/* This is the selector for the main CollapsiblePanel container. For our
 * default style, the CollapsiblePanel is responsible for drawing the borders
 * around the widget.
 *
 * If you want to constrain the width of the CollapsiblePanel widget, set a width on
 * the CollapsiblePanel container. By default, our CollapsiblePanel expands horizontally to fill
 * up available space.
 *
 * The name of the class ("CollapsiblePanel") used in this selector is not necessary
 * to make the widget function. You can use any class name you want to style the
 * CollapsiblePanel container.
 */
.CollapsiblePanel {
   margin: 0px;
   padding: 0px;
   border-left: solid 1px #CCC;
   border-right: solid 1px #999;
   border-top: solid 1px #999;
   border-bottom: solid 1px #CCC;
}

/* This is the selector for the CollapsiblePanelTab. This container houses
 * the title for the panel. This is also the container that the user clicks
 * on to open or close the panel.
 *
 * The name of the class ("CollapsiblePanelTab") used in this selector is not necessary
 * to make the widget function. You can use any class name you want to style an
 * CollapsiblePanel panel tab container.
 */
.CollapsiblePanelTab {
   font: bold 0.7em sans-serif;
   background-color: #DDD;
   border-bottom: solid 1px #CCC;
   margin: 0px;
   padding: 2px;
   cursor: pointer;
   -moz-user-select: none;
   -khtml-user-select: none;
}

/* This is the selector for a CollapsiblePanel's Content area. It's important to note that
 * you should never put any padding on the content area element if you plan to
 * use the CollapsiblePanel's open/close animations. Placing a non-zero padding on the content
 * element can cause the CollapsiblePanel to abruptly grow in height while the panels animate.
 *
 * The name of the class ("CollapsiblePanelContent") used in this selector is not necessary
 * to make the widget function. You can use any class name you want to style a
 * CollapsiblePanel content container.
 */
.CollapsiblePanelContent {
   margin: 0px;
   padding: 0px;
   font-family: sans-serif;
   font-weight: bold;
   font-size: 10px;
}

/* An anchor tag can be used inside of a CollapsiblePanelTab so that the
 * keyboard focus ring appears *inside* the tab instead of around the tab.
 * This is an example of how to make the text within the anchor tag look
 * like non-anchor (normal) text.
 */
.CollapsiblePanelTab a {
   color: black;
   text-decoration: none;
}

/* This is an example of how to change the appearance of the panel tab that is
 * currently open. The class "CollapsiblePanelOpen" is programatically added and removed
 * from panels as the user clicks on the tabs within the CollapsiblePanel.
 */
.CollapsiblePanelOpen .CollapsiblePanelTab {
   background-color: #066;
}

/* This is an example of how to change the appearance of the panel tab when the
 * CollapsiblePanel is closed. The "CollapsiblePanelClosed" class is programatically added and removed
 * whenever the CollapsiblePanel is closed.
 */

.CollapsiblePanelClosed .CollapsiblePanelTab {
 /* background-color: #EFEFEF */
}

/* This is an example of how to change the appearance of the panel tab as the
 * mouse hovers over it. The class "CollapsiblePanelTabHover" is programatically added
 * and removed from panel tab containers as the mouse enters and exits the tab container.
 */
.CollapsiblePanelTabHover,  .CollapsiblePanelOpen .CollapsiblePanelTabHover {
   background-color: #090;
}

/* This is an example of how to change the appearance of all the panel tabs when the
 * CollapsiblePanel has focus. The "CollapsiblePanelFocused" class is programatically added and removed
 * whenever the CollapsiblePanel gains or loses keyboard focus.
 */
.CollapsiblePanelFocused .CollapsiblePanelTab {
   background-color: #060;
}

O HTML também pode ser editado.

Insira entre as tags HEAD os códigos JS e CSS.

e antes da tag /body insira o seguinte código:

Código:
<script type="text/javascript">
var CollapsiblePanel1 = new Spry.Widget.CollapsiblePanel("CollapsiblePanel1");
</script>

Agora dentro da tag BODY insira este código:

Código:
<div id="CollapsiblePanel1" class="CollapsiblePanel">
  <div class="CollapsiblePanelTab" tabindex="0">MENU</div>
  <div class="CollapsiblePanelContent">Esta area pode sere escondida!</div>
</div>

Prévio = [Você precisa estar registrado e conectado para ver este link.] - O JavaScript bugou, então ele pode esconder em alguns e não esconder em outros.

Créditos do EFEITO SPRY = Adobe Systems Incorporated - 2006 Todos os direitos reservados.

Créditos do TUTORIAL: RafsEstevam ( JASONVOORHEES )



[Você precisa estar registrado e conectado para ver esta imagem.]

2 Re: Sistema de "SPRY" em Sex Fev 08, 2013 10:27 am

Admin

Admin

Isso seria um [*spoiler] ...

Que tanto trabalho :O

3 Re: Sistema de "SPRY" em Sex Fev 08, 2013 10:35 am

RafsEstevam

RafsEstevam
Programador
Programador
Sim... Só que com um efeito de hover diferenciado.



[Você precisa estar registrado e conectado para ver esta imagem.]

Conteúdo patrocinado


Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum