90621|function.xml-parse-into-struct|50|1241096305|Adam Tylmad|VGhhbnggdG8ganVrZWEgaSd2ZSB1cGdyYWRlZCB0aGUgY2hhcmFjdGVyRGF0YS1mdW5jdGlvbiB0byBhbGxvdyB0aGUgdmFsdWUgMC4gSGVyZSBpcyB0aGUgbmV3IGNvbXBsZXRlIGNvZGU6Cgo8P3BocAoKY2xhc3MgWE1MUGFyc2VyIHsKICAgIHZhciAkcGF0aDsKICAgIHZhciAkcmVzdWx0OwoKICAgIGZ1bmN0aW9uIGNsZWFuU3RyaW5nKCRzdHJpbmcpIHsKICAgICAgICByZXR1cm4gdHJpbShzdHJfcmVwbGFjZSgiJyIsICImIzM5OyIsICRzdHJpbmcpKTsKICAgIH0KICAgCiAgICBmdW5jdGlvbiBYTUxQYXJzZXIoJGVuY29kaW5nLCAkZGF0YSkgewogICAgICAgICR0aGlzLT5wYXRoID0gIlwkdGhpcy0+cmVzdWx0IjsKICAgICAgICAkdGhpcy0+aW5kZXggPSAwOwogICAgICAgCiAgICAgICAgJHhtbF9wYXJzZXIgPSB4bWxfcGFyc2VyX2NyZWF0ZSgkZW5jb2RpbmcpOwogICAgICAgIHhtbF9zZXRfb2JqZWN0KCR4bWxfcGFyc2VyLCAmJHRoaXMpOwogICAgICAgIHhtbF9zZXRfZWxlbWVudF9oYW5kbGVyKCR4bWxfcGFyc2VyLCAnc3RhcnRFbGVtZW50JywgJ2VuZEVsZW1lbnQnKTsKICAgICAgICB4bWxfc2V0X2NoYXJhY3Rlcl9kYXRhX2hhbmRsZXIoJHhtbF9wYXJzZXIsICdjaGFyYWN0ZXJEYXRhJyk7CgogICAgICAgIHhtbF9wYXJzZSgkeG1sX3BhcnNlciwgJGRhdGEsIHRydWUpOwogICAgICAgIHhtbF9wYXJzZXJfZnJlZSgkeG1sX3BhcnNlcik7CiAgICB9CiAgIAogICAgZnVuY3Rpb24gc3RhcnRFbGVtZW50KCRwYXJzZXIsICR0YWcsICRhdHRyaWJ1dGVMaXN0KSB7CiAgICAgICAgJHRoaXMtPnBhdGggLj0gIi0+Ii4kdGFnOwogICAgICAgIGV2YWwoIlwkZGF0YSA9ICIuJHRoaXMtPnBhdGguIjsiKTsKICAgICAgICBpZiAoaXNfYXJyYXkoJGRhdGEpKSB7CiAgICAgICAgICAgICRpbmRleCA9IHNpemVvZigkZGF0YSk7CiAgICAgICAgICAgICR0aGlzLT5wYXRoIC49ICJbIi4kaW5kZXguIl0iOwogICAgICAgIH0gZWxzZSBpZiAoaXNfb2JqZWN0KCRkYXRhKSkgewogICAgICAgICAgICBldmFsKCR0aGlzLT5wYXRoLiIgPSBhcnJheSgiLiR0aGlzLT5wYXRoLiIpOyIpOwogICAgICAgICAgICAkdGhpcy0+cGF0aCAuPSAiWzFdIjsKICAgICAgICB9CgogICAgICAgIGZvcmVhY2goJGF0dHJpYnV0ZUxpc3QgYXMgJG5hbWUgPT4gJHZhbHVlKQogICAgICAgICAgICBldmFsKCR0aGlzLT5wYXRoLiItPiIuJG5hbWUuICIgPSAnIi5YTUxQYXJzZXI6OmNsZWFuU3RyaW5nKCR2YWx1ZSkuIic7Iik7CiAgICB9CiAgIAogICAgZnVuY3Rpb24gZW5kRWxlbWVudCgkcGFyc2VyLCAkdGFnKSB7CiAgICAgICAgJHRoaXMtPnBhdGggPSBzdWJzdHIoJHRoaXMtPnBhdGgsIDAsIHN0cnJwb3MoJHRoaXMtPnBhdGgsICItPiIpKTsKICAgIH0KICAgCiAgICBmdW5jdGlvbiBjaGFyYWN0ZXJEYXRhKCRwYXJzZXIsICRkYXRhKSB7CiAgICAgICAgaWYgKHN0cmxlbigkZGF0YSA9IFhNTFBhcnNlcjo6Y2xlYW5TdHJpbmcoJGRhdGEpKSkKICAgICAgICAgICAgZXZhbCgkdGhpcy0+cGF0aC4iID0gJyRkYXRhJzsiKTsKICAgIH0KfQoKPz4=|3|3 87304|function.xml-parse-into-struct|50|1227887735|aerik at thesylvans dot com|SGVyZSdzIGFub3RoZXIgYXR0ZW1wdCBhdCBkZWFsaW5nIHdpdGggcmVidWlsZGluZyB0aGUgeG1sIGZyb20gdGhlIGFycmF5LiAgSSdtIGJhc2ljYWxseSBwcmV2ZW50aW5nIGNlcnRhaW4gdGFncyBmcm9tIGJlaW5nIHNlbGYgY2xvc2luZyBieSBqdXN0IGNoZWNraW5nIGZvciB0aGVtIGV4cGxpY2l0bHkgKHN1cmUgd2lzaCBleHBhdCBkaWRuJ3QgaW50ZXJwcmV0IDx0ZXh0YXJlYSAvPiBhbmQgPHRleHRhcmVhPjwvdGV4dGFyZWE+IHRoZSBzYW1lIHdheSAoYXMgImNvbXBsZXRlIiB0YWdzKS4NCg0KPD9waHANCmZ1bmN0aW9uIGFycmF5MnhtbCgkeG1sYXJ5KXsNCiAgJG89Jyc7DQogIGZvcmVhY2goJHhtbGFyeSBhcyAkdGFnICl7DQogICAgaWYoJHRhZ1sndGFnJ10gPT0gJ3RleHRhcmVhJyAmJiAhaXNzZXQoJHRhZ1sndmFsdWUnXSkpew0KICAgICAgLy9mYWtlIGEgdmFsdWUgc28gaXQgd29uJ3Qgc2VsZiBjbG9zZQ0KICAgICAgJHRhZ1sndmFsdWUnXT0nJzsNCiAgICB9DQogICAgLy90YWIgc3BhY2U6DQogICAgJHQgPSAnJzsNCiAgICBmb3IoJGk9MTsgJGkgPCAkdGFnWydsZXZlbCddOyRpKyspew0KICAgICAgJHQuPSJcdCI7DQogICAgfQ0KICAgIHN3aXRjaCgkdGFnWyd0eXBlJ10pew0KICAgICAgY2FzZSAnY29tcGxldGUnOg0KICAgICAgY2FzZSAnb3Blbic6DQogICAgICAgICRvLj0kdC4nPCcuJHRhZ1sndGFnJ107DQogICAgICAgIGlmKGlzc2V0KCR0YWdbJ2F0dHJpYnV0ZXMnXSkpew0KICAgICAgICAgIGZvcmVhY2goJHRhZ1snYXR0cmlidXRlcyddIGFzICRhdHRyPT4kYXZhbCl7DQogICAgICAgICAgICAkby49JyAnLiRhdHRyLic9IicuJGF2YWwuJyInOw0KICAgICAgICAgIH0vL2ZvcmVhY2gNCiAgICAgICAgfS8vYXR0cmlidXRlcw0KICAgICAgICBpZigkdGFnWyd0eXBlJ10gPT0gJ2NvbXBsZXRlJyl7DQogICAgICAgICAgaWYoIWlzc2V0KCR0YWdbJ3ZhbHVlJ10pKXsNCiAgICAgICAgICAgICRvIC49ICcgLz4nLiJcbiI7DQogICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICRvIC49ICc+Jy4iXG4iLiR0LiR0YWdbJ3ZhbHVlJ10uIlxuIi4kdC4nPC8nLiR0YWdbJ3RhZyddLic+Jy4iXG4iOw0KICAgICAgICAgIH0NCiAgICAgICAgfWVsc2V7DQogICAgICAgICAgJG8gLj0gJz4nLiJcbiI7DQogICAgICAgIH0NCiAgICAgICAgYnJlYWs7DQogICAgICBjYXNlICdjbG9zZSc6DQogICAgICAgICRvIC49ICR0Lic8LycuJHRhZ1sndGFnJ10uJz4nLiJcbiI7DQogICAgICAgIGJyZWFrOw0KICAgICAgY2FzZSAnY2RhdGEnOg0KICAgICAgICAkbyAuPSAkdC4kdGFnWyd2YWx1ZSddLiJcbiI7DQogICAgICAgIGJyZWFrOw0KICAgIH0vL3N3aXRjaA0KICB9Ly9mb3JlYWNoDQp9DQo/Pg==|3|3 85948|function.xml-parse-into-struct|100|1222359419|dale at ucsc dot edu|aGVyZSB5b3UgY2FuIFtyZV1hc3NlbWJsZSB4bWwgZnJvbSBhIHhtbF9wYXJzZV9pbnRvX3N0cnVjdCBnZW5lcmF0ZWQgYXJyYXk6IGllIGFycmF5MnhtbA0KDQo8P3BocA0KJHhtbF9wYXJzZXIgPSB4bWxfcGFyc2VyX2NyZWF0ZSggJ1VURi04JyApOyAvLyBVVEYtOCBvciBJU08tODg1OS0xDQp4bWxfcGFyc2VyX3NldF9vcHRpb24oICR4bWxfcGFyc2VyLCBYTUxfT1BUSU9OX0NBU0VfRk9MRElORywgMCApOw0KeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCAkeG1sX3BhcnNlciwgWE1MX09QVElPTl9TS0lQX1dISVRFLCAxICk7DQp4bWxfcGFyc2VfaW50b19zdHJ1Y3QoICR4bWxfcGFyc2VyLCAkbXlfdGV4dF94bWwsICRhcnlYTUwgKTsNCnhtbF9wYXJzZXJfZnJlZSgkeG1sX3BhcnNlcik7DQoNCi8vbm93IHVzZSBhcnlYTUwgYXJyYXkgdG8geG1sIHN0cmluZzoNCgkgICAgJG89Jyc7DQoJICAgIGZvcmVhY2goICRhcnlYTUwgYXMgJHRhZyApew0KCSAgICAJLy90YWIgc3BhY2U6DQoJICAgIAlmb3IoJGk9MTsgJGkgPCAkdGFnWydsZXZlbCddOyRpKyspDQoJICAgIAkJJG8uPSJcdCI7DQoJICAgIAlpZigkdGFnWyd0eXBlJ10hPSdjbG9zZScpew0KCQkgICAgCWlmKCR0YWdbJ3R5cGUnXSE9J2NkYXRhJykNCgkJICAgIAkJJG8uPSc8Jy4kdGFnWyd0YWcnXTsNCgkJICAgIAlpZihpc3NldCgkdGFnWydhdHRyaWJ1dGVzJ10pKXsJICAgIAkJDQoJCSAgICAJCWZvcmVhY2goJHRhZ1snYXR0cmlidXRlcyddIGFzICRhdHRyPT4kYXZhbCl7DQoJCSAgICAJCQkkby49JyAnLiRhdHRyLic9IicuJGF2YWwuJyInOw0KCQkgICAgCQl9DQoJCSAgICAJfQ0KCQkgICAgCWlmKCR0YWdbJ3R5cGUnXSE9J2NkYXRhJyl7DQoJCSAgICAJCSRvLj0oJHRhZ1sndHlwZSddPT0nY29tcGxldGUnKT8nLz4nLiJcbiI6Jz4nLiJcbiI7DQoJCSAgICAJfQ0KCQkgICAgCSRvLj0oaXNzZXQoJHRhZ1sndmFsdWUnXSkpPyR0YWdbJ3ZhbHVlJ106Jyc7DQoJICAgIAl9ZWxzZXsNCgkgICAgCQkkby49JzwvJy4kdGFnWyd0YWcnXS4nPic7DQoJICAgIAl9CSAgICAJCQ0KCSAgICB9DQo/Pg==|1|0 85636|function.xml-parse-into-struct|0|1220973621|Llorenc|U29ycnksIGZvcmdvdCBteSBsYXN0IHBvc3QgYmVsb3csIEkgY29uZnVzZWQgQ0RBVEEgc2VjdGlvbnMgKDwhW0NEQVRBW11dPikgd2l0aCB0aGUgdmFsdWUgdHlwZSAiY2RhdGEiLCB3aGljaCBkZXNwaXRlIGl0cyBuYW1lIGl0J3MgdmVyeSBkaWZmZXJlbnQhIFRoZSBmaXJzdCBhbGxvd3MgYWRkaW5nIG1hcmt1cCAoJiw8LD4pIGFzIHJlZ3VsYXIgdGV4dCBhbmQgdGhlIHNlY29uZCBpcyB0byBpbmRpY2F0ZSBhIG5vdCBjb21wbGV0ZSBub2RlIGJldHdlZW4gdGhlIG9wZW4gYW5kIGNsb3NlIG5vZGVzLiBXaGF0IGlzIHRydWUgaXMgdGhhdCB0aGUgQ0RBVEEgZGVsaW1pdGVycyBhcmUgbG9zdCBhZnRlciB4bWxfcGFyc2VfaW50b19zdHJ1Y3Qgc28gaXQncyBub3QgcG9zc2libGUgdG8gcmV2ZXJ0IHRoZSBwcm9jZXNzLgoKUGxlYXNlLCBmZWVsIGZyZWUgdG8gcmVtb3ZlIG15IGNvbW1lbnRzIG9yIGxlYXZlIHRoZW0gaWYgeW91IHRoaW5rIHRoZXkgY2FuIGhlbHAgYW55b25lLg==|| 84261|function.xml-parse-into-struct|50|1215304428|wickedfather at hotmail dot com|SGFkIGEgY29tbWVudCB1cCB0aGF0IHdhcyByZW1vdmVkIHNheWluZyBJJ2QgZm91bmQgZHJhd2JhY2tzLCBidXQgaGVyZSdzIGEgY2xhc3Mgd2hhdCBJIHdyb3RlIHdoaWNoIHdvcmtzIGZpbmUgZm9yIG1lLiAgQ29tbWVudHMgcmVtb3ZlZCBkdWUgdG8gcG9zdCByZXN0cmljdGlvbnMuICBQYXNzIHRoZSB4bWwgaW50byB0aGUgcGFyc2UgbWV0aG9kIG9yIGluIHRoZSBjb25zdHJ1Y3Rvci4gIFBocDQgYW5kIDUgc2FmZS4KCmNsYXNzIFhNTFRoaW5nCnsKICAgIHZhciAkcmF3WE1MOwogICAgdmFyICR2YWx1ZUFycmF5ID0gYXJyYXkoKTsKICAgIHZhciAka2V5QXJyYXkgPSBhcnJheSgpOwogICAgdmFyICRwYXJzZWQgPSBhcnJheSgpOwoJdmFyICRpbmRleCA9IDA7Cgl2YXIgJGF0dHJpYktleSA9ICdhdHRyaWJ1dGVzJzsKCXZhciAkdmFsdWVLZXkgPSAndmFsdWUnOwoJdmFyICRjZGF0YUtleSA9ICdjZGF0YSc7Cgl2YXIgJGlzRXJyb3IgPSBmYWxzZTsKCXZhciAkZXJyb3IgPSAnJzsKCiAgICBmdW5jdGlvbiBYTUxUaGluZygkeG1sID0gTlVMTCkKCXsKICAgICAgICAkdGhpcy0+cmF3WE1MID0gJHhtbDsKICAgIH0KCglmdW5jdGlvbiBwYXJzZSgkeG1sID0gTlVMTCkKCXsKCQlpZiAoIWlzX251bGwoJHhtbCkpCgkJewoJCQkkdGhpcy0+cmF3WE1MID0gJHhtbDsKCQl9CgoJCSR0aGlzLT5pc0Vycm9yID0gZmFsc2U7CgkJCQoJCWlmICghJHRoaXMtPnBhcnNlX2luaXQoKSkKCQl7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCSR0aGlzLT5pbmRleCA9IDA7CgkJJHRoaXMtPnBhcnNlZCA9ICR0aGlzLT5wYXJzZV9yZWN1cnNlKCk7CgkJJHRoaXMtPnN0YXR1cyA9ICdwYXJzaW5nIGNvbXBsZXRlJzsKCgkJcmV0dXJuICR0aGlzLT5wYXJzZWQ7Cgl9CgoJZnVuY3Rpb24gcGFyc2VfcmVjdXJzZSgpCgl7CQkKCQkkZm91bmQgPSBhcnJheSgpOwoJCSR0YWdDb3VudCA9IGFycmF5KCk7CgoJCXdoaWxlIChpc3NldCgkdGhpcy0+dmFsdWVBcnJheVskdGhpcy0+aW5kZXhdKSkKCQl7CgkJCSR0YWcgPSAkdGhpcy0+dmFsdWVBcnJheVskdGhpcy0+aW5kZXhdOwoJCQkkdGhpcy0+aW5kZXgrKzsKCgkJCWlmICgkdGFnWyd0eXBlJ10gPT0gJ2Nsb3NlJykKCQkJewoJCQkJcmV0dXJuICRmb3VuZDsKCQkJfQoKCQkJaWYgKCR0YWdbJ3R5cGUnXSA9PSAnY2RhdGEnKQoJCQl7CgkJCQkkdGFnWyd0YWcnXSA9ICR0aGlzLT5jZGF0YUtleTsKCQkJCSR0YWdbJ3R5cGUnXSA9ICdjb21wbGV0ZSc7CgkJCX0KCgkJCSR0YWdOYW1lID0gJHRhZ1sndGFnJ107CgoJCQlpZiAoaXNzZXQoJHRhZ0NvdW50WyR0YWdOYW1lXSkpCgkJCXsJCQoJCQkJaWYgKCR0YWdDb3VudFskdGFnTmFtZV0gPT0gMSkKCQkJCXsKCQkJCQkkZm91bmRbJHRhZ05hbWVdID0gYXJyYXkoJGZvdW5kWyR0YWdOYW1lXSk7CgkJCQl9CgkJCQkJCgkJCQkkdGFnUmVmID0mICRmb3VuZFskdGFnTmFtZV1bJHRhZ0NvdW50WyR0YWdOYW1lXV07CgkJCQkkdGFnQ291bnRbJHRhZ05hbWVdKys7CgkJCX0KCQkJZWxzZQkKCQkJewoJCQkJJHRhZ0NvdW50WyR0YWdOYW1lXSA9IDE7CgkJCQkkdGFnUmVmID0mICRmb3VuZFskdGFnTmFtZV07CgkJCX0KCgkJCXN3aXRjaCAoJHRhZ1sndHlwZSddKQoJCQl7CgkJCQljYXNlICdvcGVuJzoKCQkJCQkkdGFnUmVmID0gJHRoaXMtPnBhcnNlX3JlY3Vyc2UoKTsKCgkJCQkJaWYgKGlzc2V0KCR0YWdbJ2F0dHJpYnV0ZXMnXSkpCgkJCQkJewoJCQkJCQkkdGFnUmVmWyR0aGlzLT5hdHRyaWJLZXldID0gJHRhZ1snYXR0cmlidXRlcyddOwoJCQkJCX0KCQkJCQkJCgkJCQkJaWYgKGlzc2V0KCR0YWdbJ3ZhbHVlJ10pKQoJCQkJCXsKCQkJCQkJaWYgKGlzc2V0KCR0YWdSZWZbJHRoaXMtPmNkYXRhS2V5XSkpCQoJCQkJCQl7CgkJCQkJCQkkdGFnUmVmWyR0aGlzLT5jZGF0YUtleV0gPSAoYXJyYXkpJHRhZ1JlZlskdGhpcy0+Y2RhdGFLZXldOwkKCQkJCQkJCWFycmF5X3Vuc2hpZnQoJHRhZ1JlZlskdGhpcy0+Y2RhdGFLZXldLCAkdGFnWyd2YWx1ZSddKTsKCQkJCQkJfQoJCQkJCQllbHNlCgkJCQkJCXsKCQkJCQkJCSR0YWdSZWZbJHRoaXMtPmNkYXRhS2V5XSA9ICR0YWdbJ3ZhbHVlJ107CgkJCQkJCX0KCQkJCQl9CgkJCQkJYnJlYWs7CgoJCQkJY2FzZSAnY29tcGxldGUnOgoJCQkJCWlmIChpc3NldCgkdGFnWydhdHRyaWJ1dGVzJ10pKQoJCQkJCXsKCQkJCQkJJHRhZ1JlZlskdGhpcy0+YXR0cmliS2V5XSA9ICR0YWdbJ2F0dHJpYnV0ZXMnXTsKCQkJCQkJJHRhZ1JlZiA9JiAkdGFnUmVmWyR0aGlzLT52YWx1ZUtleV07CgkJCQkJfQoKCQkJCQlpZiAoaXNzZXQoJHRhZ1sndmFsdWUnXSkpCgkJCQkJewoJCQkJCQkkdGFnUmVmID0gJHRhZ1sndmFsdWUnXTsKCQkJCQl9CgkJCQkJYnJlYWs7CgkJCX0JCQkKCQl9CgoJCXJldHVybiAkZm91bmQ7Cgl9CgoJZnVuY3Rpb24gcGFyc2VfaW5pdCgpCgl7CiAgICAgICAgJHRoaXMtPnBhcnNlciA9IHhtbF9wYXJzZXJfY3JlYXRlKCk7CgogICAgICAgICRwYXJzZXIgPSAkdGhpcy0+cGFyc2VyOwogICAgICAgIHhtbF9wYXJzZXJfc2V0X29wdGlvbigkcGFyc2VyLCBYTUxfT1BUSU9OX0NBU0VfRk9MRElORywgMCk7IAkKICAgICAgICB4bWxfcGFyc2VyX3NldF9vcHRpb24oJHBhcnNlciwgWE1MX09QVElPTl9TS0lQX1dISVRFLCAxKTsJCQogICAgICAgIGlmICghJHJlcyA9IChib29sKXhtbF9wYXJzZV9pbnRvX3N0cnVjdCgkcGFyc2VyLCAkdGhpcy0+cmF3WE1MLCAkdGhpcy0+dmFsdWVBcnJheSwgJHRoaXMtPmtleUFycmF5KSkKCQl7CgkJCSR0aGlzLT5pc0Vycm9yID0gdHJ1ZTsKICAgICAgICAgICAgJHRoaXMtPmVycm9yID0gJ2Vycm9yOiAnLnhtbF9lcnJvcl9zdHJpbmcoeG1sX2dldF9lcnJvcl9jb2RlKCRwYXJzZXIpKS4nIGF0IGxpbmUgJy54bWxfZ2V0X2N1cnJlbnRfbGluZV9udW1iZXIoJHBhcnNlcik7CiAgICAgICAgfQogICAgICAgIHhtbF9wYXJzZXJfZnJlZSgkcGFyc2VyKTsKCgkJcmV0dXJuICRyZXM7Cgl9Cn0=|1|1 83881|function.xml-parse-into-struct|57|1213623570|jemptymethod at gmail dot com|QHdpY2tlZGZhdGhlciwgcmU6IGJlYXVkdXJyYW50Li4uLkkganVzdCBjYW5ub3QgY29uY3VyIHRoYXQgdGhlIGxhdHRlcidzIGNsYXNzIGlzICJncmVhdCIuLi4uRmlyc3Qgb2YgYWxsLCBpdCBkb2Vzbid0IGhhbmRsZSBhdHRyaWJ1dGVzLiAgU2Vjb25kIG9mIGFsbCwgYXMgbXkgY29kZSBiZWxvdyBkZW1vbnN0cmF0ZXMsIHRoZXJlIGlzIG5vIG5lZWQgd2FzdGUgcHJvY2Vzc2luZyBieSBkZXRlcm1pbmluZyBkdXBsaWNhdGVzIHdpdGhpbiB0aGVpciBvd24gbG9vcC4gIFRoaXJkbHksIHdoZW4gdGhlcmUgYXJlIGR1cGxpY2F0ZXMsIGl0IGNvbGxhcHNlcyB0aGUgbGF5ZXIgaW4gdGhlIGFycmF5IGFib3ZlIHRoZSBkdXBsaWNhdGVzLgoKSGVyZSBpcyBzb21lIG11Y2ggbW9yZSBjb25zaXNlIGNvZGUsIHRob3VnaCBub3QgKHlldCkgb2JqZWN0IG9yaWVudGVkLCBhbmQgYWxzbyBub3QgeWV0IGhhbmRsaW5nIGF0dHJpYnV0ZXM7IGl0IG1haW50YWlucyBhIHN0YWNrIGZvciBlYWNoIGxldmVsOgoKPD9waHAKZnVuY3Rpb24geG1sX3BhcnNlX2ludG9fYXNzb2MoJGZpbGUpIHsKICAkZGF0YSA9IGltcGxvZGUoIiIsIGZpbGUoJGZpbGUpKTsKICAkcCA9IHhtbF9wYXJzZXJfY3JlYXRlKCk7CiAgCiAgeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCRwLCBYTUxfT1BUSU9OX0NBU0VfRk9MRElORywgMCk7CiAgeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCRwLCBYTUxfT1BUSU9OX1NLSVBfV0hJVEUsIDEpOwogIAogIHhtbF9wYXJzZV9pbnRvX3N0cnVjdCgkcCwgJGRhdGEsICR2YWxzLCAkaW5kZXgpOwogIHhtbF9wYXJzZXJfZnJlZSgkcCk7CgogICRsZXZlbHMgPSBhcnJheShudWxsKTsKICAKICBmb3JlYWNoICgkdmFscyBhcyAkdmFsKSB7CiAgICBpZiAoJHZhbFsndHlwZSddID09ICdvcGVuJyB8fCAkdmFsWyd0eXBlJ10gPT0gJ2NvbXBsZXRlJykgewogICAgICBpZiAoIWFycmF5X2tleV9leGlzdHMoJHZhbFsnbGV2ZWwnXSwgJGxldmVscykpIHsKICAgICAgICAkbGV2ZWxzWyR2YWxbJ2xldmVsJ11dID0gYXJyYXkoKTsKICAgICAgfQogICAgfQogICAgCiAgICAkcHJldkxldmVsID0mICRsZXZlbHNbJHZhbFsnbGV2ZWwnXSAtIDFdOwogICAgJHBhcmVudCA9ICRwcmV2TGV2ZWxbc2l6ZW9mKCRwcmV2TGV2ZWwpLTFdOyAKICAgIAogICAgaWYgKCR2YWxbJ3R5cGUnXSA9PSAnb3BlbicpIHsKICAgICAgJHZhbFsnY2hpbGRyZW4nXSA9IGFycmF5KCk7CiAgICAgIGFycmF5X3B1c2goJiRsZXZlbHNbJHZhbFsnbGV2ZWwnXV0sICR2YWwpOwogICAgICBjb250aW51ZTsKICAgIH0KICAgIAogICAgZWxzZSBpZiAoJHZhbFsndHlwZSddID09ICdjb21wbGV0ZScpIHsKICAgICAgJHBhcmVudFsnY2hpbGRyZW4nXVskdmFsWyd0YWcnXV0gPSAkdmFsWyd2YWx1ZSddOwogICAgfQogICAgCiAgICBlbHNlIGlmICgkdmFsWyd0eXBlJ10gPT0gJ2Nsb3NlJykgewogICAgICAkcG9wID0gYXJyYXlfcG9wKCRsZXZlbHNbJHZhbFsnbGV2ZWwnXV0pOwogICAgICAkdGFnID0gJHBvcFsndGFnJ107CiAgICAgIAogICAgICBpZiAoJHBhcmVudCkgewogICAgICAgIGlmICghYXJyYXlfa2V5X2V4aXN0cygkdGFnLCAkcGFyZW50WydjaGlsZHJlbiddKSkgewogICAgICAgICAgJHBhcmVudFsnY2hpbGRyZW4nXVskdGFnXSA9ICRwb3BbJ2NoaWxkcmVuJ107CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYgKGlzX2FycmF5KCRwYXJlbnRbJ2NoaWxkcmVuJ11bJHRhZ10pKSB7CiAgICAgICAgICAkcGFyZW50WydjaGlsZHJlbiddWyR0YWddW10gPSAkcG9wWydjaGlsZHJlbiddOyAKICAgICAgICB9CiAgICAgIH0KICAgICAgZWxzZSB7CiAgICAgICAgcmV0dXJuKGFycmF5KCRwb3BbJ3RhZyddID0+ICRwb3BbJ2NoaWxkcmVuJ10pKTsKICAgICAgfQogICAgfQogICAgCiAgICAkcHJldkxldmVsW3NpemVvZigkcHJldkxldmVsKS0xXSA9ICRwYXJlbnQ7CiAgfQp9Cj8+|4|3 82476|function.xml-parse-into-struct|0|1207989370|wickedfather at hotmail dot com|VG8gYmVhdWR1cnJhbnQgLSB0aGF0IGNsYXNzIGlzIGdyZWF0IGFuZCBzdHJ1Y3R1cmVzIHRoaW5ncyBpbiBhIHZlcnkgc2Vuc2libGUgd2F5LiAgT25seSBwcm9ibGVtIGlzIHRoYXQgaXQgcmFpc2VzIGFuIGVycm9yIGlmIGEgdGFnIGlzIGVtcHR5LCBzbyB3b3VsZCBzdWdnZXN0IGEgc2ltcGxlIG1vZCB0byB0aGUgcGFyc2UgbWV0aG9kIGp1c3QgdG8gYWRkIGFuIGlzc2V0IHRlc3QuCgppZiAoaXNzZXQoJHZhbFsndmFsdWUnXSkpCnsKCSR0aGlzLT5zZXRBcnJheVZhbHVlKCR0aGlzLT5vdXRwdXQsICRzdGFjaywgJHZhbFsndmFsdWUnXSk7Cn0=|| 81704|function.xml-parse-into-struct|60|1205138578|mathiasrav at gmail dot com|SW4gcmVzcG9uc2UgdG8gQW5vbnltb3VzJyBwb3N0IGF0IDI2LUZlYi0yMDA4IDExOjUwOgoKU2F5aW5nIHRoYXQgeW91ICJkb24ndCB1bmRlcnN0YW5kIGV2ZXJ5dGhpbmciIGlzbid0IGdvaW5nIHRvIGdldCB5b3UgdmVyeSBwb3B1bGFyIC0geW91IHNob3VsZCB1bmRlcnN0YW5kIHRoZSBjb2RlIHlvdSB1c2UuCmZvcmVhY2ggaXNuJ3QgKnNsb3cqIGluIFBIUCwgaXQgaXMgYWN0dWFsbHkgZmFzdGVyIHRoYW4gdGhlIGVxdWl2YWxlbnQgZm9yLWNvbnN0cnVjdCAod2hpY2gsIGluIG1hbnkgY2FzZXMsIGlzbid0IGF2YWlsYWJsZSkuCgpUaGUgcmVhc29uIHlvdXIgc2NyaXB0IGlzIHNsb3cgaXMgc2ltcGx5IHlvdXIgdXNlIG9mIHhtbF9wYXJzZV9pbnRvX3N0cnVjdCAtIGl0IHJlYWRzIHRoZSB3aG9sZSBYTUwtc3RyaW5nIGFuZCBkb2Vzbid0IHJldHVybiB1bnRpbCBpdCBoYXMgcGFyc2VkIGFuZCB2YWxpZGF0ZWQgaXQgYWxsLiBJZiB5b3UncmUgbG9va2luZyBmb3IgZWZmaWNpZW5jeSwgeW91J2xsIGhhdmUgdG8gdXNlIHRoZSBtb3JlIGxvdy1sZXZlbCB4bWxfcGFyc2VyX2NyZWF0ZSwgeG1sX3NldF8qX2hhbmRsZXIgZnVuY3Rpb25zLiBUaGVuIG1ha2Ugc3VyZSB5b3UgZG9uJ3Qga2VlcCBldmVyeXRoaW5nIGluIGEgaHVnZSBhcnJheSBiZWZvcmUgb3V0cHV0dGluZyBpdCAoYXQgbGVhc3QgZG9uJ3QgaWYgeW91J3JlIGdvaW5nIGZvciBlZmZpY2llbmN5KS4=|3|2 79922|function.xml-parse-into-struct|67|1198063395|beaudurrant at gmail dot com|VGhpcyBpcyBleHRlbmRpbmcgd2hhdCBBbGYgTWFyaXVzIEZvc3MgT2xzZW4gaGFkIHBvc3RlZCBhYm92ZS4KCkl0IHRha2VzIGludG8gYWNjb3VudCBhcnJheSBrZXlzIHdpdGggdGhlIHNhbWUgbmFtZSBhbmQgdXNlcyBhbiBpbmNyZW1lbnQgZm9yIHRoZW0gaW5zdGVhZCBvZiBvdmVyd3JpdGluZyB0aGUga2V5cy4KCkkgYW0gdXNpbmcgaXQgZm9yIFNPQVAgcmVxdWVzdHMgKDIwSyAtIDE1MEspIGFuZCBpdCBwYXJzZXMgdmVyeSBmYXN0IGNvbXBhcmVkIHRvIFBFQVIuCgo8PwoKY2xhc3MgWE1MUGFyc2VyICB7CgkKCS8vIHJhdyB4bWwKCXByaXZhdGUgJHJhd1hNTDsKCS8vIHhtbCBwYXJzZXIKCXByaXZhdGUgJHBhcnNlciA9IG51bGw7CgkvLyBhcnJheSByZXR1cm5lZCBieSB0aGUgeG1sIHBhcnNlcgoJcHJpdmF0ZSAkdmFsdWVBcnJheSA9IGFycmF5KCk7Cglwcml2YXRlICRrZXlBcnJheSA9IGFycmF5KCk7CgkKCS8vIGFycmF5cyBmb3IgZGVhbGluZyB3aXRoIGR1cGxpY2F0ZSBrZXlzCglwcml2YXRlICRkdXBsaWNhdGVLZXlzID0gYXJyYXkoKTsKCQoJLy8gcmV0dXJuIGRhdGEKCXByaXZhdGUgJG91dHB1dCA9IGFycmF5KCk7Cglwcml2YXRlICRzdGF0dXM7CgoJcHVibGljIGZ1bmN0aW9uIFhNTFBhcnNlcigkeG1sKXsKCQkkdGhpcy0+cmF3WE1MID0gJHhtbDsKCQkkdGhpcy0+cGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKCQlyZXR1cm4gJHRoaXMtPnBhcnNlKCk7Cgl9CgoJcHJpdmF0ZSBmdW5jdGlvbiBwYXJzZSgpewoJCQoJCSRwYXJzZXIgPSAkdGhpcy0+cGFyc2VyOwoJCQoJCXhtbF9wYXJzZXJfc2V0X29wdGlvbigkcGFyc2VyLCBYTUxfT1BUSU9OX0NBU0VfRk9MRElORywgMCk7IC8vIERvbnQgbWVzcyB3aXRoIG15IGNBc0Ugc0V0VGluZ3MKCQl4bWxfcGFyc2VyX3NldF9vcHRpb24oJHBhcnNlciwgWE1MX09QVElPTl9TS0lQX1dISVRFLCAxKTsgCS8vIERvbnQgYm90aGVyIHdpdGggZW1wdHkgaW5mbwoJCWlmKCF4bWxfcGFyc2VfaW50b19zdHJ1Y3QoJHBhcnNlciwgJHRoaXMtPnJhd1hNTCwgJHRoaXMtPnZhbHVlQXJyYXksICR0aGlzLT5rZXlBcnJheSkpewoJCQkkdGhpcy0+c3RhdHVzID0gJ2Vycm9yOiAnLnhtbF9lcnJvcl9zdHJpbmcoeG1sX2dldF9lcnJvcl9jb2RlKCRwYXJzZXIpKS4nIGF0IGxpbmUgJy54bWxfZ2V0X2N1cnJlbnRfbGluZV9udW1iZXIoJHBhcnNlcik7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJeG1sX3BhcnNlcl9mcmVlKCRwYXJzZXIpOwoKCQkkdGhpcy0+ZmluZER1cGxpY2F0ZUtleXMoKTsKCgkJLy8gdG1wIGFycmF5IHVzZWQgZm9yIHN0YWNraW5nCgkJJHN0YWNrID0gYXJyYXkoKTsgCQkKCQkkaW5jcmVtZW50ID0gMDsKCQkKCQlmb3JlYWNoKCR0aGlzLT52YWx1ZUFycmF5IGFzICR2YWwpIHsKCQkJaWYoJHZhbFsndHlwZSddID09ICJvcGVuIikgewoJCQkJLy9pZiBhcnJheSBrZXkgaXMgZHVwbGljYXRlIHRoZW4gc2VuZCBpbiBpbmNyZW1lbnQKCQkJCWlmKGFycmF5X2tleV9leGlzdHMoJHZhbFsndGFnJ10sICR0aGlzLT5kdXBsaWNhdGVLZXlzKSl7CgkJCQkJYXJyYXlfcHVzaCgkc3RhY2ssICR0aGlzLT5kdXBsaWNhdGVLZXlzWyR2YWxbJ3RhZyddXSk7CgkJCQkJJHRoaXMtPmR1cGxpY2F0ZUtleXNbJHZhbFsndGFnJ11dKys7CgkJCQl9CgkJCQllbHNlewoJCQkJCS8vIGVsc2Ugc2VuZCBpbiB0YWcKCQkJCQlhcnJheV9wdXNoKCRzdGFjaywgJHZhbFsndGFnJ10pOwoJCQkJfQoJCQl9IGVsc2VpZigkdmFsWyd0eXBlJ10gPT0gImNsb3NlIikgewoJCQkJYXJyYXlfcG9wKCRzdGFjayk7CgkJCQkvLyByZXNldCB0aGUgaW5jcmVtZW50IGlmIHRoZXkgdGFnIGRvZXMgbm90IGV4aXN0cyBpbiB0aGUgc3RhY2sKCQkJCWlmKGFycmF5X2tleV9leGlzdHMoJHZhbFsndGFnJ10sICRzdGFjaykpewoJCQkJCSR0aGlzLT5kdXBsaWNhdGVLZXlzWyR2YWxbJ3RhZyddXSA9IDA7CgkJCQl9CgkJCX0gZWxzZWlmKCR2YWxbJ3R5cGUnXSA9PSAiY29tcGxldGUiKSB7CgkJCQkvL2lmIGFycmF5IGtleSBpcyBkdXBsaWNhdGUgdGhlbiBzZW5kIGluIGluY3JlbWVudAoJCQkJaWYoYXJyYXlfa2V5X2V4aXN0cygkdmFsWyd0YWcnXSwgJHRoaXMtPmR1cGxpY2F0ZUtleXMpKXsKCQkJCQlhcnJheV9wdXNoKCRzdGFjaywgJHRoaXMtPmR1cGxpY2F0ZUtleXNbJHZhbFsndGFnJ11dKTsKCQkJCQkkdGhpcy0+ZHVwbGljYXRlS2V5c1skdmFsWyd0YWcnXV0rKzsKCQkJCX0KCQkJCWVsc2V7CQkJCQoJCQkJCS8vIGVsc2Ugc2VuZCBpbiB0YWcKCQkJCQlhcnJheV9wdXNoKCRzdGFjaywgICR2YWxbJ3RhZyddKTsKCQkJCX0KCQkJCSR0aGlzLT5zZXRBcnJheVZhbHVlKCR0aGlzLT5vdXRwdXQsICRzdGFjaywgJHZhbFsndmFsdWUnXSk7CgkJCQlhcnJheV9wb3AoJHN0YWNrKTsKCQkJfQoJCQkkaW5jcmVtZW50Kys7CgkJfQoKCQkkdGhpcy0+c3RhdHVzID0gJ3N1Y2Nlc3M6IHhtbCB3YXMgcGFyc2VkJzsKCQlyZXR1cm4gdHJ1ZTsKCgl9CgkKCXByaXZhdGUgZnVuY3Rpb24gZmluZER1cGxpY2F0ZUtleXMoKXsKCQkKCQlmb3IoJGk9MDskaSA8IGNvdW50KCR0aGlzLT52YWx1ZUFycmF5KTsgJGkrKykgewoJCQkvLyBkdXBsaWNhdGUga2V5cyBhcmUgd2hlbiB0d28gY29tcGxldGUgdGFncyBhcmUgc2lkZSBieSBzaWRlCgkJCWlmKCR0aGlzLT52YWx1ZUFycmF5WyRpXVsndHlwZSddID09ICJjb21wbGV0ZSIpewoJCQkJaWYoICRpKzEgPCBjb3VudCgkdGhpcy0+dmFsdWVBcnJheSkgKXsKCQkJCQlpZigkdGhpcy0+dmFsdWVBcnJheVskaSsxXVsndGFnJ10gPT0gJHRoaXMtPnZhbHVlQXJyYXlbJGldWyd0YWcnXSAmJiAkdGhpcy0+dmFsdWVBcnJheVskaSsxXVsndHlwZSddID09ICJjb21wbGV0ZSIpewoJCQkJCQkkdGhpcy0+ZHVwbGljYXRlS2V5c1skdGhpcy0+dmFsdWVBcnJheVskaV1bJ3RhZyddXSA9IDA7CgkJCQkJfQoJCQkJfQoJCQl9CgkJCS8vIGFsc28gd2hlbiBhIGNsb3NlIHRhZyBpcyBiZWZvcmUgYW4gb3BlbiB0YWcgYW5kIHRoZSB0YWdzIGFyZSB0aGUgc2FtZQoJCQlpZigkdGhpcy0+dmFsdWVBcnJheVskaV1bJ3R5cGUnXSA9PSAiY2xvc2UiKXsKCQkJCWlmKCAkaSsxIDwgY291bnQoJHRoaXMtPnZhbHVlQXJyYXkpICl7CgkJCQkJaWYoCSR0aGlzLT52YWx1ZUFycmF5WyRpKzFdWyd0eXBlJ10gPT0gIm9wZW4iICYmICR0aGlzLT52YWx1ZUFycmF5WyRpKzFdWyd0YWcnXSA9PSAkdGhpcy0+dmFsdWVBcnJheVskaV1bJ3RhZyddKQoJCQkJCQkkdGhpcy0+ZHVwbGljYXRlS2V5c1skdGhpcy0+dmFsdWVBcnJheVskaV1bJ3RhZyddXSA9IDA7IAoJCQkJfQoJCQl9CgkJCQoJCX0KCQkKCX0KCQoJcHJpdmF0ZSBmdW5jdGlvbiBzZXRBcnJheVZhbHVlKCYkYXJyYXksICRzdGFjaywgJHZhbHVlKXsKCQlpZiAoJHN0YWNrKSB7CgkJCSRrZXkgPSBhcnJheV9zaGlmdCgkc3RhY2spOwoJCQkkdGhpcy0+c2V0QXJyYXlWYWx1ZSgkYXJyYXlbJGtleV0sICRzdGFjaywgJHZhbHVlKTsKCQkJcmV0dXJuICRhcnJheTsKCQl9IGVsc2UgewoJCQkkYXJyYXkgPSAkdmFsdWU7CgkJfQoJfQoJCglwdWJsaWMgZnVuY3Rpb24gZ2V0T3V0cHV0KCl7CgkJcmV0dXJuICR0aGlzLT5vdXRwdXQ7Cgl9CgkKCXB1YmxpYyBmdW5jdGlvbiBnZXRTdGF0dXMoKXsKCQlyZXR1cm4gJHRoaXMtPnN0YXR1czsJCgl9CiAgIAkKfQoKPz4KClVzYWdlOgoKJHAgPSBuZXcgWE1MUGFyc2VyKCR4bWwpOwokcC0+Z2V0T3V0cHV0KCk7|10|5 77768|function.xml-parse-into-struct|60|1189579604|Alf Marius Foss Olsen|PD9waHAKLyoKICBBbiBlYXN5IGxpZ2h0d2VpZ2h0IChBcnJheSAtPikgWE1MIC0+IEFycmF5IGFsZ29yaXRobS4uCgogIFR5cGljYWwgY2FzZTogWW91IGhhdmUgYW4gYXJyYXkgeW91IHdhbnQgdG8gZXhwb3J0IHRvIGFuIGV4dGVybmFsIHNlcnZlciwKICAgICAgICAgICAgICAgIHNvIHlvdSBtYWtlIFhNTCBvdXQgb2YgaXQsIGV4cG9ydHMgaXQsIGFuZCAib24gdGhlIG90aGVyIHNpZGUiCiAgICAgICAgICAgICAgICBtYWtlIGl0IGludG8gYW4gYXJyYXkgYWdhaW4uIFRoZXNlIHR3byBmdW5jdGlvbnMgd2lsbCB0YWtlIGNhcmUKICAgICAgICAgICAgICAgIG9mIHRoYXQgbGFzdCBwYXJ0LCBpZSBYTUwgLT4gQXJyYXkKICAKICBOT1RFISBUaGUgZnVuY3Rpb24gWE1MVG9BcnJheSBhc3N1bWVzIHRoYXQgdGhlIFhNTCBfZG9udF8gaGF2ZSBub2RlcyBvbiB0aGUKICAgICAgICBzYW1lIGxldmVsIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhlbiBpdCBqdXN0IHdvbnQgd29yay4gVGhpcyBpcyBub3QgYQogICAgICAgIHByb2JsZW0sIGFzIHRoaXMgY2FzZSBkZWFscyB3aXRoIEFycmF5IC0+IFhNTCAtPiBBcnJheSwgYW5kIGFuIGFycmF5CiAgICAgICAgY2FudCBoYXZlIHRvIGlkZW50aWNhbCBpbmRleGVzL2tleXMuCiovCgpmdW5jdGlvbiBYTUxUb0FycmF5KCR4bWwpIHsKICAkcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoJ0lTTy04ODU5LTEnKTsgLy8gRm9yIExhdGluLTEgY2hhcnNldAogIHhtbF9wYXJzZXJfc2V0X29wdGlvbigkcGFyc2VyLCBYTUxfT1BUSU9OX0NBU0VfRk9MRElORywgMCk7IC8vIERvbnQgbWVzcyB3aXRoIG15IGNBc0Ugc0V0VGluZ3MKICB4bWxfcGFyc2VyX3NldF9vcHRpb24oJHBhcnNlciwgWE1MX09QVElPTl9TS0lQX1dISVRFLCAxKTsgLy8gRG9udCBib3RoZXIgd2l0aCBlbXB0eSBpbmZvCiAgeG1sX3BhcnNlX2ludG9fc3RydWN0KCRwYXJzZXIsICR4bWwsICR2YWx1ZXMpOwogIHhtbF9wYXJzZXJfZnJlZSgkcGFyc2VyKTsKICAKICAkcmV0dXJuID0gYXJyYXkoKTsgLy8gVGhlIHJldHVybmVkIGFycmF5CiAgJHN0YWNrID0gYXJyYXkoKTsgLy8gdG1wIGFycmF5IHVzZWQgZm9yIHN0YWNraW5nCiAgZm9yZWFjaCgkdmFsdWVzIGFzICR2YWwpIHsKICAgIGlmKCR2YWxbJ3R5cGUnXSA9PSAib3BlbiIpIHsKICAgICAgYXJyYXlfcHVzaCgkc3RhY2ssICR2YWxbJ3RhZyddKTsKICAgIH0gZWxzZWlmKCR2YWxbJ3R5cGUnXSA9PSAiY2xvc2UiKSB7CiAgICAgIGFycmF5X3BvcCgkc3RhY2spOwogICAgfSBlbHNlaWYoJHZhbFsndHlwZSddID09ICJjb21wbGV0ZSIpIHsKICAgICAgYXJyYXlfcHVzaCgkc3RhY2ssICR2YWxbJ3RhZyddKTsKICAgICAgc2V0QXJyYXlWYWx1ZSgkcmV0dXJuLCAkc3RhY2ssICR2YWxbJ3ZhbHVlJ10pOwogICAgICBhcnJheV9wb3AoJHN0YWNrKTsKICAgIH0vL2lmLWVsc2VpZgogIH0vL2ZvcmVhY2gKICByZXR1cm4gJHJldHVybjsKfS8vZnVuY3Rpb24gWE1MVG9BcnJheQogIApmdW5jdGlvbiBzZXRBcnJheVZhbHVlKCYkYXJyYXksICRzdGFjaywgJHZhbHVlKSB7CiAgaWYgKCRzdGFjaykgewogICAgJGtleSA9IGFycmF5X3NoaWZ0KCRzdGFjayk7CiAgICBzZXRBcnJheVZhbHVlKCRhcnJheVska2V5XSwgJHN0YWNrLCAkdmFsdWUpOwogICAgcmV0dXJuICRhcnJheTsKICB9IGVsc2UgewogICAgJGFycmF5ID0gJHZhbHVlOwogIH0vL2lmLWVsc2UKfS8vZnVuY3Rpb24gc2V0QXJyYXlWYWx1ZQogIAovLyBVU0FHRToKJHhtbCA9IDw8PFFRUQo8P3htbCB2ZXJzaW9uPSIxLjAiPz4KPHJvb3Q+CiAgPG5vZGUxPlNvbWUgdGV4dDwvbm9kZTE+CiAgPG5vZGUyYT4KICAgIDxub2RlMmI+CiAgICAgIDxub2RlMmM+U29tZSB0ZXh0PC9ub2RlMmM+CiAgICA8L25vZGUyYj4KICA8L25vZGUyYT4KPC9yb290PlxuClFRUTsKJGFycmF5ID0gWE1MVG9BcnJheSgkeG1sKTsKcHJpbnQgIjxwcmU+IjsKcHJpbnRfcigkYXJyYXkpOwpwcmludCAiPC9wcmU+IjsKLy8gIE91dHB1dDoKLy8KLy8gIEFycmF5Ci8vICAoCi8vICAgICAgW3Jvb3RdID0+IEFycmF5Ci8vICAgICAgICAgICgKLy8gICAgICAgICAgICAgIFtub2RlMV0gPT4gU29tZSB0ZXh0Ci8vICAgICAgICAgICAgICBbbm9kZTJhXSA9PiBBcnJheQovLyAgICAgICAgICAgICAgICAgICgKLy8gICAgICAgICAgICAgICAgICAgICAgW25vZGUyYl0gPT4gQXJyYXkKLy8gICAgICAgICAgICAgICAgICAgICAgICAgICgKLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbm9kZTJjXSA9PiBTb21lIHRleHQKLy8gICAgICAgICAgICAgICAgICAgICAgICAgICkKLy8gICAgICAgICAgICAgICAgICApCi8vICAgICAgICAgICkKLy8gICkKPz4=|9|6 77503|function.xml-parse-into-struct|0|1188618188|vinod at citadel-soft dot com|TXkgcHJldmlvdXMgY29kZSB3YXMgaGF2aW5nIHNvbWUgYnVncyBpbiwgdGhhdCBpcyBmaXhlZCBub3cgCgo8P3BocApjbGFzcyBDU0xYbWxSZWFkZXIgewoJcHJpdmF0ZSAkdGFnc3RhY2s7Cglwcml2YXRlICR4bWx2YWxzOyAgCglwcml2YXRlICAkeG1sdmFyQXJyUG9zOwoJcHJpdmF0ZSAkeG1sZmlsZTsKICAgIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRmaWxlbmFtZSkgIC8vIGNvbnN0cnVjdG9yIHRvIGludGlhbGl6ZSB0aGUgc3RhY2sgYW5kIHZhbCBhcnJheQogICAgewogICAgICAgCgkJJHRoaXMtPnRhZ3N0YWNrID0gYXJyYXkoKTsgICAvLyBjb250YWluIHRoZSBvcGVuIHRhZ3MgdGlsbCBub3cKCQkkdGhpcy0+eG1sdmFscyA9IGFycmF5KCk7IAoJCSR0aGlzLT54bWx2YXJBcnJQb3MgPSAkdGhpcy0+eG1sdmFsczsgIC8vIHRlbXBvcmFyeSB2YXJpYWJsZSB0byBob2xkIHRoZSBjdXJyZW50IHRhZyBwb3NpdGlvbgkKCQkkdGhpcy0+eG1sZmlsZSA9ICRmaWxlbmFtZTsgCiAgICB9CglmdW5jdGlvbiByZWFkRGF0YWJhc2UoKSAKCXsKCQkvLyByZWFkIHRoZSBYTUwgZGF0YWJhc2UgCgkJJGRhdGEgPSBpbXBsb2RlKCIiLCBmaWxlKCR0aGlzLT54bWxmaWxlKSk7CgkJJHBhcnNlciA9IHhtbF9wYXJzZXJfY3JlYXRlKCk7CgkJeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCRwYXJzZXIsIFhNTF9PUFRJT05fQ0FTRV9GT0xESU5HLCAwKTsKCQl4bWxfcGFyc2VyX3NldF9vcHRpb24oJHBhcnNlciwgWE1MX09QVElPTl9TS0lQX1dISVRFLCAxKTsKCQl4bWxfcGFyc2VfaW50b19zdHJ1Y3QoJHBhcnNlciwgJGRhdGEsICR2YWx1ZXMsICR0YWdzKTsKCQl4bWxfcGFyc2VyX2ZyZWUoJHBhcnNlcik7CgkKCQlmb3JlYWNoKCR2YWx1ZXMgYXMgJGtleSA9PiAkdmFsKSAgLy8gCgkJewoJCQlpZigkdmFsWyd0eXBlJ10gPT0gIm9wZW4iKQoJCQl7CgkJCQlhcnJheV9wdXNoKCR0aGlzLT50YWdzdGFjaywgJHZhbFsndGFnJ10pOwoJCQkJJHRoaXMtPmdldEFycmF5UGF0aCgpOyAKCQkJCWlmKGNvdW50KCR0aGlzLT54bWx2YXJBcnJQb3MpID4gMCAmJiAoIWFycmF5X2tleV9leGlzdHMoMCwkdGhpcy0+eG1sdmFyQXJyUG9zKSkpCgkJCQl7CgkJCQkJJHRlbXAxID0gJHRoaXMtPnhtbHZhckFyclBvczsKCQkJCQkkdGhpcy0+eG1sdmFyQXJyUG9zID0gIGFycmF5KCk7CgkJCQkJJHRoaXMtPnhtbHZhckFyclBvc1swXSA9ICR0ZW1wMTsKCQkJCQlhcnJheV9wdXNoKCR0aGlzLT50YWdzdGFjaywgMSk7CgkJCQl9CQoJCQkJZWxzZSBpZiggYXJyYXlfa2V5X2V4aXN0cygwLCR0aGlzLT54bWx2YXJBcnJQb3MpKXsgCgkJCQkJJG9wbmNvdW50ID0gY291bnQoJHRoaXMtPnhtbHZhckFyclBvcyk7CgkJCQkJYXJyYXlfcHVzaCgkdGhpcy0+dGFnc3RhY2ssICRvcG5jb3VudCk7CgkJCQl9CgkJCQkkdGFnU3RhY2tQb2ludGVyICs9IDE7CgkJCX1lbHNlIGlmKCR2YWxbJ3R5cGUnXSA9PSAiY2xvc2UiKQoJCQl7CgkJCQl3aGlsZSggJHZhbFsndGFnJ10gIT0gKCRsYXN0T3BlbmVkID0gYXJyYXlfcG9wKCR0aGlzLT50YWdzdGFjaykpKXt9CgkJCX1lbHNlIGlmKCR2YWxbJ3R5cGUnXSA9PSAgImNvbXBsZXRlIikKCQkJewoJCQkJJHRoaXMtPmdldEFycmF5UGF0aCgpOwoJCQkJaWYoIGFycmF5X2tleV9leGlzdHMoJHZhbFsndGFnJ10sJHRoaXMtPnhtbHZhckFyclBvcykpCgkJCQl7CQoJCQkJCWlmKGFycmF5X2tleV9leGlzdHMoMCwkdGhpcy0+eG1sdmFyQXJyUG9zWyR2YWxbJ3RhZyddXSkpCgkJCQkJewoJCQkJCQkkZWxlbWVudENvdW50ID0gY291bnQoJHRoaXMtPnhtbHZhckFyclBvc1skdmFsWyd0YWcnXV0pOwoJCQkJCQkkdGhpcy0+eG1sdmFyQXJyUG9zWyR2YWxbJ3RhZyddXVskZWxlbWVudENvdW50XSA9ICR2YWxbJ3ZhbHVlJ107CgkJCQkJfWVsc2UKCQkJCQl7CQkKCQkJCQkJJHRlbXAxID0gJHRoaXMtPnhtbHZhckFyclBvc1skdmFsWyd0YWcnXV07CgkJCQkJCSR0aGlzLT54bWx2YXJBcnJQb3NbJHZhbFsndGFnJ11dID0gIGFycmF5KCk7CgkJCQkJCSR0aGlzLT54bWx2YXJBcnJQb3NbJHZhbFsndGFnJ11dWzBdID0gJHRlbXAxOwoJCQkJCQkkdGhpcy0+eG1sdmFyQXJyUG9zWyR2YWxbJ3RhZyddXVsxXSA9ICR2YWxbJ3ZhbHVlJ107CgkJCQkJfQoJCQkJfSBlbHNlCgkJCQl7CgkJCQkJJHRoaXMtPnhtbHZhckFyclBvc1skdmFsWyd0YWcnXV0gPSAkdmFsWyd2YWx1ZSddOwoJCQkJfQoJCQl9CgkJfQoJCXJlc2V0KCR0aGlzLT54bWx2YWxzKTsKCQlyZXR1cm4gJHRoaXMtPnhtbHZhbHM7Cgl9CglmdW5jdGlvbiBnZXRBcnJheVBhdGgoKQoJewoKCQlyZXNldCgkdGhpcy0+eG1sdmFscyk7CgkJJHRoaXMtPnhtbHZhckFyclBvcyA9ICYkdGhpcy0+eG1sdmFsczsKCQlmb3JlYWNoKCR0aGlzLT50YWdzdGFjayBhcyAka2V5KQoJCXsJCgkJCSR0aGlzLT54bWx2YXJBcnJQb3MgPSAmJHRoaXMtPnhtbHZhckFyclBvc1ska2V5XTsKCQkJCQkKCQl9Cgl9CgkJCn0KCiRyZWFkZXJPYmogID0gbmV3IENTTFhtbFJlYWRlcigidGVzdC54bWwiKTsKJHhtbHZhbHMgPSAkcmVhZGVyT2JqLT5yZWFkRGF0YWJhc2UoKTsKCmVjaG8gIiMjIyMjIyMjIyMgWE1MIFZhbHVlcyBJbiBhcnJheSBhcyB0aGUgbXVsdGlkaW1lbnRpb25hbCBhcnJheSAgIyMjIyMjIyMjIyMjI1xuIjsKZWNobyAiPHByZT4iOwpwcmludF9yKCR4bWx2YWxzKTsKZWNobyAiPC9wcmU+IjsgCgo/Pg==|| 73044|function.xml-parse-into-struct|100|1170812319|siteres at gmail dot com|UEhQOiBYTUwgdG8gQXJyYXkgYW5kIGJhY2t3YXJkczoKCkhlcmUgdGhlIFhNTCB3aXRoIFBIUCBzb2x1dGlvbjogWE1MLT5BcnJheSBhbmQgQXJyYXktPlhNTC4KV29yayB3aXRoIGl0IGFzIHdpdGggdXN1YWwgYXJyYXkuCgpTb3VyY2VzIGFyZSBoZXJlOgpodHRwOi8vbXlzcmMuYmxvZ3Nwb3QuY29tLzIwMDcvMDIvcGhwLXhtbC10by1hcnJheS1hbmQtYmFja3dhcmRzLmh0bWwKKGxlYXZlIG1lIGNvbW1lbnRzOikKCkV4YW1wbGUgIzEgKDEueG1sKToKCjxkZGQ+CiA8b25lbW9yZSBkZD0iNTUiPgogIDx0dD4zMzM8L3R0PgogIDx0dCBzcz0iczEiPjU1NTwvdHQ+CiAgPHR0Pjc3NzwvdHQ+CiA8L29uZW1vcmU+CiA8dHdvPnNkZiBycjwvdHdvPgo8L2RkZD4KClRoZSBjb2RlOgoKJHhtbD14bWwyYXJ5KGZpbGVfZ2V0X2NvbnRlbnRzKCcxLnhtbCcpKTsKcHJpbnRfcigkeG1sKTsgCgpIZXJlIGlzIHRoZSBBcnJheSByZXN1bHQ6CgpBcnJheQooCiAgIFtkZGRdID0+IEFycmF5ICgKICAgICAgICAgICBbX2NdID0+IEFycmF5ICgKICAgICAgICAgICAgICAgICAgIFtfcF0gPT4gQXJyYXkgKlJFQ1VSU0lPTioKICAgICAgICAgICAgICAgICAgIFtvbmVtb3JlXSA9PiBBcnJheSAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtfYV0gPT4gQXJyYXkgKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZF0gPT4gNTUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgW19jXSA9PiBBcnJheSAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW19wXSA9PiBBcnJheSAgKlJFQ1VSU0lPTioKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHRdID0+IEFycmF5ICgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFswXSA9PiBBcnJheSAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtfdl0gPT4gMzMzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWzFdID0+IEFycmF5ICgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW19hXSA9PiBBcnJheSAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NzXSA9PiBzMQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbX3ZdID0+IDU1NQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsyXSA9PiBBcnJheSAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtfdl0gPT4gNzc3CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgW3R3b10gPT4gQXJyYXkgKAogICAgICAgICAgICAgICAgICAgICAgICAgICBbX3ZdID0+IHNkZiBycgogICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgKQogICAgICAgKQop|2|0 71472|function.xml-parse-into-struct|0|1164862085|webmaster at after5webdesign dot com|VGhhdCBwYXJzZXIgYWxzbyBoYXMgYSBwcm9ibGVtIGluIHdoaWNoIGl0IHdpbGwgbm90IHBhcnNlIG1vcmUgaXRlbXMgdGhhbiB0aGUgY3VycmVudCBsZXZlbCBpdCBpcyBvbi4gVGhhdCBpcywgcGFyc2luZyB0aGlzOiAgPDE+PDI+QTwvMj48Mj5CPC8yPjwyPkM8LzI+PC8xPgpXaWxsIG9ubHkgcmVzdWx0IGluIHRoaXM6IEEgQgpDIGlzIG5ldmVyIHByb2Nlc3NlZC4KCkl0IG1pZ2h0IGJlIGJldHRlciB3aXRoIHNvbWV0aGluZyBsaWtlIHRoaXM6CiAgICAgICAgICAkZmlsZSA9IGdldF91cmwoJ2h0dHA6Ly9uZXdzLnNlYXJjaC55YWhvby5jb20vbmV3cy9yc3M/cD1jdXJyZW50K2V2ZW50cycsIFVSTF9DT05URU5UKTsKICAgICAgICAgICRkYXRhID0gJGZpbGVbJ2NvbnRlbnQnXTsKICAgICAgICAgICR4bWxfcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKICAgICAgICAgIHhtbF9wYXJzZV9pbnRvX3N0cnVjdCgkeG1sX3BhcnNlciwgJGRhdGEsICR2YWxzLCAkaW5kZXgpOwogICAgICAgICAgeG1sX3BhcnNlcl9mcmVlKCR4bWxfcGFyc2VyKTsKICAgICAgICAgIC8vVW5jb21tZW50IHRoZSBsaW5lcyBiZWxvdyB0byBzZWUgdGhlIGVudGlyZSBzdHJ1Y3R1cmUgb2YgeW91ciBYTUwgZG9jdW1lbnQKICAgICAgICAgIC8vZWNobyAiPHByZT5JTkRFWDogXG4iOwogICAgICAgICAgLy9wcmludF9yICgkaW5kZXgpOwogICAgICAgICAgLy9lY2hvICJcbiBcbiBcbiBWQUxVRVM6IjsKICAgICAgICAgIC8vcHJpbnRfciAoJHZhbHMpOwogICAgICAgICAgLy9lY2hvICI8L3ByZT4iOwogICAgICAgICAgJHBhcmFtcyA9IGFycmF5KCk7CiAgICAgICAgICAkbGV2ZWwgPSBhcnJheSgpOwogICAgICAgICAgJHN0YXJ0X2xldmVsID0gMTsKICAgICAgICAgIGZvcmVhY2ggKCR2YWxzIGFzICR4bWxfZWxlbSkgewogICAgICAgICAgICBpZiAoJHhtbF9lbGVtWyd0eXBlJ10gPT0gJ29wZW4nKSB7CiAgICAgICAgICAgICAgaWYgKGFycmF5X2tleV9leGlzdHMoJ2F0dHJpYnV0ZXMnLCR4bWxfZWxlbSkpIHsKICAgICAgICAgICAgICAgIGxpc3QoJGxldmVsWyR4bWxfZWxlbVsnbGV2ZWwnXV0sJGV4dHJhKSA9IGFycmF5X3ZhbHVlcygkeG1sX2VsZW1bJ2F0dHJpYnV0ZXMnXSk7CiAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICRsZXZlbFskeG1sX2VsZW1bJ2xldmVsJ11dID0gJHhtbF9lbGVtWyd0YWcnXTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCR4bWxfZWxlbVsndHlwZSddID09ICdjb21wbGV0ZScpIHsKICAgICAgICAgICAgICAkcGhwX3N0bXQgPSAnJHBhcmFtcyc7CiAgICAgICAgICAgICAgd2hpbGUoJHN0YXJ0X2xldmVsIDwgJHhtbF9lbGVtWydsZXZlbCddKSB7CiAgICAgICAgICAgICAgICAkcGhwX3N0bXQgLj0gJ1skbGV2ZWxbJy4kc3RhcnRfbGV2ZWwuJ11dJzsKICAgICAgICAgICAgICAgICRzdGFydF9sZXZlbCsrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAkcGhwX3N0bXQgLj0gJ1skeG1sX2VsZW1bXCd0YWdcJ11dW10gPSAkeG1sX2VsZW1bXCd2YWx1ZVwnXTsnOwogICAgICAgICAgICAgIGV2YWwoJHBocF9zdG10KTsKICAgICAgICAgICAgICAkc3RhcnRfbGV2ZWwtLTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgZWNobyAiPHByZT4iOwogICAgICAgICAgcHJpbnRfciAoJHBhcmFtcyk7CiAgICAgICAgICBlY2hvICI8L3ByZT4iOwoKflRpbV9NeXRo|| 69616|function.xml-parse-into-struct|50|1158070471|Elad Elrom|VGhpcyBpcyBhIHF1aWNrIGZpeCBmb3IgcGFyc2luZyBYTUwgZnJvbSByZW1vdGUgVVJMLCBzb21lIG9mIHRoZSBleGFtcGxlIGFib3ZlIHdpbGwgd29yayB3aGVuIHRyeWluZyB0byBwYXJzZSBvbiB5b3VyIGxvY2FsIHNlcnZlciB3aXRob3V0ICJodHRwOi8vIiBidXQgbm90IHdoZW4gdHJ5aW5nIHRvIHBhcnNlIGZyb20gcmVtb3RlIHNlcnZlciB1c2luZyAiaHR0cDovL3d3dy5VUkwiLi4uCgo8PwokZmlsZT0iaHR0cDovL3d3dy5VUkwuY29tL2ZpbGUuWE1MIjsKCiR4bWxfcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKCiRoYW5kbGUgPSBmb3BlbigkZmlsZSwgInJiIik7CiRjb250ZW50cyA9ICcnOwp3aGlsZSAoIWZlb2YoJGhhbmRsZSkpIHsKICAkZGF0YSAuPSBmcmVhZCgkaGFuZGxlLCA4MTkyKTsKfQpmY2xvc2UoJGhhbmRsZSk7Cgp4bWxfcGFyc2VfaW50b19zdHJ1Y3QoJHhtbF9wYXJzZXIsICRkYXRhLCAkdmFscywgJGluZGV4KTsKeG1sX3BhcnNlcl9mcmVlKCR4bWxfcGFyc2VyKTsKCiRwYXJhbXMgPSBhcnJheSgpOwokbGV2ZWwgPSBhcnJheSgpOwpmb3JlYWNoICgkdmFscyBhcyAkeG1sX2VsZW0pIHsKICBpZiAoJHhtbF9lbGVtWyd0eXBlJ10gPT0gJ29wZW4nKSB7CiAgIGlmIChhcnJheV9rZXlfZXhpc3RzKCdhdHRyaWJ1dGVzJywkeG1sX2VsZW0pKSB7CiAgICAgbGlzdCgkbGV2ZWxbJHhtbF9lbGVtWydsZXZlbCddXSwkZXh0cmEpID0gYXJyYXlfdmFsdWVzKCR4bWxfZWxlbVsnYXR0cmlidXRlcyddKTsKICAgfSBlbHNlIHsKICAgICAkbGV2ZWxbJHhtbF9lbGVtWydsZXZlbCddXSA9ICR4bWxfZWxlbVsndGFnJ107CiAgIH0KICB9CiAgaWYgKCR4bWxfZWxlbVsndHlwZSddID09ICdjb21wbGV0ZScpIHsKICAgJHN0YXJ0X2xldmVsID0gMTsKICAgJHBocF9zdG10ID0gJyRwYXJhbXMnOwogICB3aGlsZSgkc3RhcnRfbGV2ZWwgPCAkeG1sX2VsZW1bJ2xldmVsJ10pIHsKICAgICAkcGhwX3N0bXQgLj0gJ1skbGV2ZWxbJy4kc3RhcnRfbGV2ZWwuJ11dJzsKICAgICAkc3RhcnRfbGV2ZWwrKzsKICAgfQogICAkcGhwX3N0bXQgLj0gJ1skeG1sX2VsZW1bXCd0YWdcJ11dID0gJHhtbF9lbGVtW1wndmFsdWVcJ107JzsKICAgZXZhbCgkcGhwX3N0bXQpOwogIH0KfQoKZWNobyAiPHByZT4iOwpwcmludF9yICgkcGFyYW1zKTsKZWNobyAiPC9wcmU+IjsKPz4=|1|1 66487|function.xml-parse-into-struct|65|1148432138|efredricksen at gmail dot com|UGVyaGFwcyB0aGUgb25lIHRydWUgcGFyc2VyOj8gSSBtb2RpZmllZCB4YWRlbWF4J3MgZmluZSBjb2RlIHRvIHRpZHkgaXQgdXAsIGNvZGV3aXNlIGFuZCBzdHlsZSB3aXNlLCByYXRpb25hbGl6ZSBzb21lIG1pbm9yIGNyYXp5bmVzcywgYW5kIG1ha2UgbmFtZXMgZml0IG5vbWVuY2xhdHVyZSBmcm9tIHRoZSBYTUwgc3BlYy4gKFRoZXJlIGFyZSBubyB1c2VzIG9mIGV2YWwsIGFuZCBzaGFtZSBvbiB5b3UgcGVvcGxlIHdobyBkby4pCgo8P3BocCAKY2xhc3MgWG1sRWxlbWVudCB7CiAgdmFyICRuYW1lOwogIHZhciAkYXR0cmlidXRlczsKICB2YXIgJGNvbnRlbnQ7CiAgdmFyICRjaGlsZHJlbjsKfTsKCmZ1bmN0aW9uIHhtbF90b19vYmplY3QoJHhtbCkgewogICRwYXJzZXIgPSB4bWxfcGFyc2VyX2NyZWF0ZSgpOwogIHhtbF9wYXJzZXJfc2V0X29wdGlvbigkcGFyc2VyLCBYTUxfT1BUSU9OX0NBU0VfRk9MRElORywgMCk7CiAgeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCRwYXJzZXIsIFhNTF9PUFRJT05fU0tJUF9XSElURSwgMSk7CiAgeG1sX3BhcnNlX2ludG9fc3RydWN0KCRwYXJzZXIsICR4bWwsICR0YWdzKTsKICB4bWxfcGFyc2VyX2ZyZWUoJHBhcnNlcik7CgogICRlbGVtZW50cyA9IGFycmF5KCk7ICAvLyB0aGUgY3VycmVudGx5IGZpbGxpbmcgW2NoaWxkXSBYbWxFbGVtZW50IGFycmF5CiAgJHN0YWNrID0gYXJyYXkoKTsKICBmb3JlYWNoICgkdGFncyBhcyAkdGFnKSB7CiAgICAkaW5kZXggPSBjb3VudCgkZWxlbWVudHMpOwogICAgaWYgKCR0YWdbJ3R5cGUnXSA9PSAiY29tcGxldGUiIHx8ICR0YWdbJ3R5cGUnXSA9PSAib3BlbiIpIHsKICAgICAgJGVsZW1lbnRzWyRpbmRleF0gPSBuZXcgWG1sRWxlbWVudDsKICAgICAgJGVsZW1lbnRzWyRpbmRleF0tPm5hbWUgPSAkdGFnWyd0YWcnXTsKICAgICAgJGVsZW1lbnRzWyRpbmRleF0tPmF0dHJpYnV0ZXMgPSAkdGFnWydhdHRyaWJ1dGVzJ107CiAgICAgICRlbGVtZW50c1skaW5kZXhdLT5jb250ZW50ID0gJHRhZ1sndmFsdWUnXTsKICAgICAgaWYgKCR0YWdbJ3R5cGUnXSA9PSAib3BlbiIpIHsgIC8vIHB1c2gKICAgICAgICAkZWxlbWVudHNbJGluZGV4XS0+Y2hpbGRyZW4gPSBhcnJheSgpOwogICAgICAgICRzdGFja1tjb3VudCgkc3RhY2spXSA9ICYkZWxlbWVudHM7CiAgICAgICAgJGVsZW1lbnRzID0gJiRlbGVtZW50c1skaW5kZXhdLT5jaGlsZHJlbjsKICAgICAgfQogICAgfQogICAgaWYgKCR0YWdbJ3R5cGUnXSA9PSAiY2xvc2UiKSB7ICAvLyBwb3AKICAgICAgJGVsZW1lbnRzID0gJiRzdGFja1tjb3VudCgkc3RhY2spIC0gMV07CiAgICAgIHVuc2V0KCRzdGFja1tjb3VudCgkc3RhY2spIC0gMV0pOwogICAgfQogIH0KICByZXR1cm4gJGVsZW1lbnRzWzBdOyAgLy8gdGhlIHNpbmdsZSB0b3AtbGV2ZWwgZWxlbWVudAp9CgovLyBGb3IgZXhhbXBsZToKJHhtbCA9ICcKPHBhcnNlcj4KICAgPG5hbWUgbGFuZ3VhZ2U9ImVuLXVzIj5GcmVkIFBhcnNlcjwvbmFtZT4KICAgPGNhdGVnb3J5PgogICAgICAgPG5hbWU+Tm9tZW5jbGF0dXJlPC9uYW1lPgogICAgICAgPG5vdGU+Tm90ZXdvcnRoeTwvbm90ZT4KICAgPC9jYXRlZ29yeT4KPC9wYXJzZXI+Cic7CnByaW50X3IoeG1sX3RvX29iamVjdCgkeG1sKSk7Cj8+Cgp3aWxsIGdpdmU6Cgp4bWxlbGVtZW50IE9iamVjdAooCiAgICBbbmFtZV0gPT4gcGFyc2VyCiAgICBbYXR0cmlidXRlc10gPT4gCiAgICBbY29udGVudF0gPT4gCiAgICBbY2hpbGRyZW5dID0+IEFycmF5CiAgICAgICAgKAogICAgICAgICAgICBbMF0gPT4geG1sZWxlbWVudCBPYmplY3QKICAgICAgICAgICAgICAgICgKICAgICAgICAgICAgICAgICAgICBbbmFtZV0gPT4gbmFtZQogICAgICAgICAgICAgICAgICAgIFthdHRyaWJ1dGVzXSA9PiBBcnJheQogICAgICAgICAgICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFuZ3VhZ2VdID0+IGVuLXVzCiAgICAgICAgICAgICAgICAgICAgICAgICkKCiAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdID0+IEZyZWQgUGFyc2VyCiAgICAgICAgICAgICAgICAgICAgW2NoaWxkcmVuXSA9PiAKICAgICAgICAgICAgICAgICkKCiAgICAgICAgICAgIFsxXSA9PiB4bWxlbGVtZW50IE9iamVjdAogICAgICAgICAgICAgICAgKAogICAgICAgICAgICAgICAgICAgIFtuYW1lXSA9PiBjYXRlZ29yeQogICAgICAgICAgICAgICAgICAgIFthdHRyaWJ1dGVzXSA9PiAKICAgICAgICAgICAgICAgICAgICBbY29udGVudF0gPT4gCiAgICAgICAgICAgICAgICAgICAgW2NoaWxkcmVuXSA9PiBBcnJheQogICAgICAgICAgICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbMF0gPT4geG1sZWxlbWVudCBPYmplY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYW1lXSA9PiBuYW1lCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyaWJ1dGVzXSA9PiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdID0+IE5vbWVuY2xhdHVyZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2hpbGRyZW5dID0+IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbMV0gPT4geG1sZWxlbWVudCBPYmplY3QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYW1lXSA9PiBub3RlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyaWJ1dGVzXSA9PiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdID0+IE5vdGV3b3J0aHkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NoaWxkcmVuXSA9PiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCgogICAgICAgICAgICAgICAgICAgICAgICApCgogICAgICAgICAgICAgICAgKQoKICAgICAgICApCgop|33|18 66479|function.xml-parse-into-struct|50|1148397965|Stuart|VGhpcyBpcyBhIGdyZWF0IGxpdHRsZSBmdW5jdGlvbiBmb3IgYSBsb3Qgb2YgWE1MIHdvcmssIGJ1dCBub3RlIHRoYXQgdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCBoYW5kbGUgWE1MIGVudGl0aWVzIHByb3Blcmx5LgoKVGhlIGJhc2ljIFhNTCBlbnRpdGllcyAmbHQ7ICZndDsgJmFtcDsgJnF1b3Q7IGFyZSBmaW5lLCBqdXN0IGFueXRoaW5nIGVsc2Ugd2lsbCBub3Qgd29yazoKCklmIHRoZSBlbnRpdHkgaXMgZGVmaW5lZCBpbiB0aGUgWE1MIGhlYWRlciwgdGhlIHBhcnNlciB3aWxsIGRyb3AgaXQgY29tcGxldGVseSBmcm9tIHRoZSBzdHJ1Y3QgaXQgY3JlYXRlcy4KCklmIHRoZSBlbnRpdHkgaXMgbm90IGRlZmluZWQgaW4gdGhlIFhNTCB0aGVuIHRoZSBwYXJzZXIgd2lsbCBjcmFzaCBvdXQgd2l0aCBhbiB1bmRlZmluZWQgZW50aXR5IGVycm9yLgoKWW91IHNob3VsZCBiZSBhYmxlIHRvIHdvcmsgYXJvdW5kIHRoaXMgbGltaXRhdGlvbiBieSB1c2luZyBhIHByZWdfcmVwbGFjZSBvbiB5b3VyIFhNTCBzdHJpbmcgYmVmb3JlIHBhc3NpbmcgaXQgdG8gdGhlIHBhcnNlci4KCihGdXJ0aGVyIGRldGFpbHMgaW4gQnVnICMzNTI3MTsgdGhpcyBpcyBqdXN0IGEgd2FybmluZyB0byB0aG9zZSB0aGlua2luZyBvZiB1c2luZyB0aGlzIGZ1bmN0aW9uIGZvciBwYXJzaW5nIHJlYWwgWE1MIGRvY3VtZW50cyBub3QganVzdCB0cml2aWFsIFhNTCBleGFtcGxlcyk=|2|2 60485|function.xml-parse-into-struct|0|1136722545|xademax at gmail dot com|VGhpcyBpcyBqdXN0IGFub3RoZXIgc2ltcGxlIHhtbCBwYXJzZXIgOikKCjw/cGhwCgpjbGFzcyBYbWwKewoJdmFyICR0YWc7Cgl2YXIgJHZhbHVlOwoJdmFyICRhdHRyaWJ1dGVzOwoJdmFyICRuZXh0Owp9CgpmdW5jdGlvbiB4bWwyYXJyYXkoJHhtbF9zdHJpbmcpCnsKCSRQYXJzZXIgPSB4bWxfcGFyc2VyX2NyZWF0ZSgpOwoJeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCRQYXJzZXIsIFhNTF9PUFRJT05fQ0FTRV9GT0xESU5HLCAwKTsKCXhtbF9wYXJzZXJfc2V0X29wdGlvbigkUGFyc2VyLCBYTUxfT1BUSU9OX1NLSVBfV0hJVEUsIDEpOwoJeG1sX3BhcnNlX2ludG9fc3RydWN0KCRQYXJzZXIsICR4bWxfc3RyaW5nLCAkWG1sX1ZhbHVlcyk7Cgl4bWxfcGFyc2VyX2ZyZWUoJFBhcnNlcik7CgkkWG1sQ2xhc3MgPSBhcnJheSgpOwoJJExhc3RPYmogPSBhcnJheSgpOwoJJE5vd09iaiA9ICYkWG1sQ2xhc3M7CgoJZm9yZWFjaCgkWG1sX1ZhbHVlcyBhcyAkWG1sX0tleSA9PiAkWG1sX1ZhbHVlKQoJewoJCSRJbmRleCA9IGNvdW50KCROb3dPYmopOwoJCWlmKCRYbWxfVmFsdWVbInR5cGUiXSA9PSAiY29tcGxldGUiKQoJCXsKCQkJJE5vd09ialskSW5kZXhdID0gbmV3IFhtbDsKCQkJJE5vd09ialskSW5kZXhdLT50YWcgPSAkWG1sX1ZhbHVlWyJ0YWciXTsKCQkJJE5vd09ialskSW5kZXhdLT52YWx1ZSA9ICRYbWxfVmFsdWVbInZhbHVlIl07CgkJCSROb3dPYmpbJEluZGV4XS0+YXR0cmlidXRlcyA9ICRYbWxfVmFsdWVbImF0dHJpYnV0ZXMiXTsKCQl9CgkJZWxzZWlmKCRYbWxfVmFsdWVbInR5cGUiXSA9PSAib3BlbiIpCgkJewoJCQkkTm93T2JqWyRJbmRleF0gPSBuZXcgWG1sOwoJCQkkTm93T2JqWyRJbmRleF0tPnRhZyA9ICRYbWxfVmFsdWVbInRhZyJdOwoJCQkkTm93T2JqWyRJbmRleF0tPnZhbHVlID0gJFhtbF9WYWx1ZVsidmFsdWUiXTsKCQkJJE5vd09ialskSW5kZXhdLT5hdHRyaWJ1dGVzID0gJFhtbF9WYWx1ZVsiYXR0cmlidXRlcyJdOwoJCQkkTm93T2JqWyRJbmRleF0tPm5leHQgPSBhcnJheSgpOwoJCQkkTGFzdE9ialtjb3VudCgkTGFzdE9iaildID0gJiROb3dPYmo7CgkJCSROb3dPYmogPSAmJE5vd09ialskSW5kZXhdLT5uZXh0OwoJCX0KCQllbHNlaWYoJFhtbF9WYWx1ZVsidHlwZSJdID09ICJjbG9zZSIpCgkJewoJCQkkTm93T2JqID0gJiRMYXN0T2JqW2NvdW50KCRMYXN0T2JqKSAtIDFdOwoJCQl1bnNldCgkTGFzdE9ialtjb3VudCgkTGFzdE9iaikgLSAxXSk7CgkJfQoJCQoJfQoKCXJldHVybiAkWG1sQ2xhc3M7Cn0KCiRTdHJpbmcgPSAiCjxwYXJzZXI+Cgk8cGFyc2V1cl9uYW1lPk15UGFyc2VyPC9wYXJzZXVyX25hbWU+Cgk8Y2F0ZWdvcnk+CgkJPG5hbWU+TmFtZSAxPC9uYW1lPgoJCTxub3RlPkEgbm90ZSAxPC9ub3RlPgoJPC9jYXRlZ29yeT4KPC9wYXJzZXI+CiI7CiRYbWwgPSB4bWwyYXJyYXkoJFN0cmluZyk7CgpwcmludF9yKCRYbWwpOwo/PgoKVGhpcyBleGVtcGxlIHdpbGwgc2hvdyA6IApBcnJheQooCiAgICBbMF0gPT4gWG1sIE9iamVjdAogICAgICAgICgKICAgICAgICAgICAgW3RhZ10gPT4gcGFyc2VyCiAgICAgICAgICAgIFt2YWx1ZV0gPT4gCiAgICAgICAgICAgIFthdHRyaWJ1dGVzXSA9PiAKICAgICAgICAgICAgW25leHRdID0+IEFycmF5CiAgICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICAgICAgWzBdID0+IFhtbCBPYmplY3QKICAgICAgICAgICAgICAgICAgICAgICAgKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RhZ10gPT4gcGFyc2V1cl9uYW1lCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdID0+IE15UGFyc2VyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0cmlidXRlc10gPT4gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmV4dF0gPT4gCiAgICAgICAgICAgICAgICAgICAgICAgICkKCiAgICAgICAgICAgICAgICAgICAgWzFdID0+IFhtbCBPYmplY3QKICAgICAgICAgICAgICAgICAgICAgICAgKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RhZ10gPT4gY2F0ZWdvcnkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV0gPT4gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0cmlidXRlc10gPT4gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmV4dF0gPT4gQXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFswXSA9PiBYbWwgT2JqZWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RhZ10gPT4gbmFtZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV0gPT4gTmFtZSAxCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHJpYnV0ZXNdID0+IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZXh0XSA9PiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsxXSA9PiBYbWwgT2JqZWN0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RhZ10gPT4gbm90ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV0gPT4gQSBub3RlIDEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0cmlidXRlc10gPT4gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25leHRdID0+IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCgogICAgICAgICAgICAgICAgICAgICAgICApCgogICAgICAgICAgICAgICAgKQoKICAgICAgICApCgop|| 58568|function.xml-parse-into-struct|0|1131421706|mbirth at webwriters dot de|U2VhcmNoaW5nIGZvciBhIG5pY2UgYW5kIHdvcmtpbmcgd2F5IHRvIGdldCBhIFJTUyBmZWVkIGludG8gYW4gYXJyYXktc3RydWN0dXJlLCBJIGZvdW5kIHRoZSBzb2x1dGlvbiBwb3N0ZWQgYnkga2llcmFuIGJ1dCBkaXNsaWtlZCB0aG9zZSBzZXZlcmFsIGV2YWwoKXMuIFNvIEkgd3JvdGUgbXkgb3duIHVzaW5nIHJlZmVyZW5jZXMvcG9pbnRlcnMuCgo8P3BocAoKY2xhc3MgUlNTUGFyc2VyIHsKICAKICB2YXIgJHN0cnVjdCA9IGFycmF5KCk7ICAvLyBob2xkcyBmaW5hbCBzdHJ1Y3R1cmUKICB2YXIgJGN1cnB0cjsgIC8vIGN1cnJlbnQgYnJhbmNoIG9uICRzdHJ1Y3QKICB2YXIgJHBhcmVudHMgPSBhcnJheSgpOyAgLy8gcGFyZW50IGJyYW5jaGVzIG9mIGN1cnJlbnQgYnJhbmNoCiAgCiAgZnVuY3Rpb24gUlNTUGFyc2VyKCR1cmwpIHsKICAgICR0aGlzLT5jdXJwdHIgPSYgJHRoaXMtPnN0cnVjdDsgIC8vIHNldCByZWYgdG8gYmFzZQogICAgJHhtbHBhcnNlciA9IHhtbF9wYXJzZXJfY3JlYXRlKCk7CiAgICB4bWxfc2V0X29iamVjdCgkeG1scGFyc2VyLCAkdGhpcyk7CiAgICB4bWxfc2V0X2VsZW1lbnRfaGFuZGxlcigkeG1scGFyc2VyLCAndGFnX29wZW4nLCAndGFnX2Nsb3NlJyk7CiAgICB4bWxfc2V0X2NoYXJhY3Rlcl9kYXRhX2hhbmRsZXIoJHhtbHBhcnNlciwgJ2NkYXRhJyk7CiAgICAkZnAgPSBmb3BlbigkdXJsLCAncicpOwoKICAgIHdoaWxlICgkZGF0YSA9IGZyZWFkKCRmcCwgNDA5NikpCiAgICAgIHhtbF9wYXJzZSgkeG1scGFyc2VyLCAkZGF0YSwgZmVvZigkZnApKQogICAgICB8fCBkaWUoc3ByaW50ZigiWE1MIGVycm9yOiAlcyBhdCBsaW5lICVkIiwgCiAgICAgICAgIHhtbF9lcnJvcl9zdHJpbmcoeG1sX2dldF9lcnJvcl9jb2RlKCR4bWxwYXJzZXIpKSwgCiAgICAgICAgIHhtbF9nZXRfY3VycmVudF9saW5lX251bWJlcigkeG1scGFyc2VyKSkpOwoKICAgIGZjbG9zZSgkZnApOwogICAgeG1sX3BhcnNlcl9mcmVlKCR4bWxwYXJzZXIpOwogIH0KICAKICBmdW5jdGlvbiB0YWdfb3BlbigkcGFyc2VyLCAkdGFnLCAkYXR0cikgewogICAgJGkgPSBjb3VudCgkdGhpcy0+Y3VycHRyWydjaGlsZHJlbiddKTsKICAgICRqID0gY291bnQoJHRoaXMtPnBhcmVudHMpOwogICAgJHRoaXMtPmN1cnB0clsnY2hpbGRyZW4nXVskaV09YXJyYXkoKTsgIC8vIGFkZCBuZXcgY2hpbGQgZWxlbWVudAogICAgJHRoaXMtPnBhcmVudHNbJGpdID0mICR0aGlzLT5jdXJwdHI7ICAvLyBzdG9yZSBjdXJyZW50IHBvc2l0aW9uIGFzIHBhcmVudAogICAgJHRoaXMtPmN1cnB0ciA9JiAkdGhpcy0+Y3VycHRyWydjaGlsZHJlbiddWyRpXTsgIC8vIHN1Ym1lcmdlIHRvIG5ld2x5IGNyZWF0ZWQgY2hpbGQgZWxlbWVudAogICAgJHRoaXMtPmN1cnB0clsnbmFtZSddID0gJHRhZzsKICAgIGlmIChjb3VudCgkYXR0cik+MCkgJHRoaXMtPmN1cnB0clsnYXR0ciddID0gJGF0dHI7CiAgfQogIAogIGZ1bmN0aW9uIHRhZ19jbG9zZSgkcGFyc2VyLCAkdGFnKSB7CiAgICAkaSA9IGNvdW50KCR0aGlzLT5wYXJlbnRzKTsKICAgIGlmICgkaT4wKSAkdGhpcy0+Y3VycHRyID0mICR0aGlzLT5wYXJlbnRzWyRpLTFdOyAgLy8gcmV0dXJuIHRvIHBhcmVudCBlbGVtZW50CiAgICB1bnNldCgkdGhpcy0+cGFyZW50c1skaS0xXSk7ICAvLyBjbGVhciBmcm9tIGxpc3Qgb2YgcGFyZW50cwogIH0KICAKICBmdW5jdGlvbiBjZGF0YSgkcGFyc2VyLCAkZGF0YSkgewogICAgJGRhdGEgPSB0cmltKCRkYXRhKTsKICAgIGlmICghZW1wdHkoJGRhdGEpKSB7CiAgICAgICR0aGlzLT5jdXJwdHJbJ3ZhbHVlJ10gLj0gJGRhdGE7CiAgICB9CiAgfQogIAp9CgokbXlwYXJzZXIgPSBuZXcgUlNTUGFyc2VyKCdnZXRpdGVtcy54bWwnKTsKJGFub3RoZXJwYXJzZXIgPSBuZXcgUlNTUGFyc2VyKCdodHRwOi8vam9obmRvZTpzZWNyZXRAbXlmZWVkcy5jb20vZ2V0ZmVlZC54bWwnKTsKCnByaW50X3IoJG15cGFyc2VyLT5zdHJ1Y3QpOwpwcmludF9yKCRhbm90aGVycGFyc2VyLT5zdHJ1Y3QpOwoKPz4=|0|1 57975|function.xml-parse-into-struct|0|1129800044|kieran at kieran dot ca|DQo8Pw0KLyoNCnwNCnwgX3htbDJhcnJheSAtIGFub3RoZXIgYWJzdHJhY3Rpb24gbGF5ZXIgb24geG1sX3BhcnNlX2ludG9fc3RydWN0IA0KfCAgICAgICAgICAgICAgdGhhdCByZXR1cm5zIGEgbmljZSBuZXN0ZWQgYXJyYXkuDQp8DQp8ICAgICAgQHBhcmFtOiAkeG1sIGlzIGEgc3RyaW5nIGNvbnRhaW5pbmcgYSBmdWxsIHhtbCBkb2N1bWVudA0KfA0KfCAgICAgcmV0dXJuczogYSBuZXN0ZWQgcGhwIGFycmF5IHRoYXQgbG9va3MgbGlrZSB0aGlzOiANCnwgICAgICAgICAgICAgICAgICAgDQp8ICAgICAgICAgICAgICBhcnJheQ0KfCAgICAgICAgICAgICAgKA0KfCAgICAgICAgICAgICAgICAgIFtfbmFtZV0gPT4gdGhlIG5hbWUgb2YgdGhlIHRhZw0KfCAgICAgICAgICAgICAgICAgIFtfYXR0cmlidXRlc10gPT4gYW4gYXJyYXkgb2YgJ2F0dHJpYnV0ZSc9Pid2YWx1ZScgY29tYm9zDQp8ICAgICAgICAgICAgICAgICAgW192YWx1ZV0gPT4gdGhlIHRleHQgY29udGVudHMgb2YgdGhlIG5vZGUNCnwgICAgICAgICAgICAgICAgICBbX2NoaWxkcmVuXSA9PiBhbiBhcnJheSBvZiB0aGVzZSBhcnJheXMsIG9uZSBmb3IgZWFjaCBub2RlLg0KfCAgICAgICAgICAgICAgKQ0KfA0KfCAgICAgICBub3RlczogdGhhbmtzIHRvICdqZWZmZyBhdCBhY3RpdmVzdGF0ZSBkb3QgY29tJyB3aG8gaW5zcGlyZWQNCnwgICAgICAgICAgICAgIG1lIHRvIGVzc2VudGlhbGx5IHJlLXdyaXRlIGhpcyBleGFtcGxlIGNvZGUgZnJvbSBwaHAubmV0DQp8DQp8CQkgICBtZTogS2llcmFuIEh1Z2dpbnMgPCBraWVyYW5bYXRda2llcmFuW2RvdF1jYSA+DQp8DQoqLw0KZnVuY3Rpb24gX3htbDJhcnJheSgkeG1sKXsNCglnbG9iYWwgJGtleXM7DQoJZ2xvYmFsICRsZXZlbDsNCglpZighaXNfYXJyYXkoJHhtbCkpeyAvLyBpbml0IG9uIGZpcnN0IHJ1bg0KCQkkcmF3X3htbCA9ICR4bWw7DQoJCSRwID0geG1sX3BhcnNlcl9jcmVhdGUoKTsNCgkJeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCRwLCBYTUxfT1BUSU9OX0NBU0VfRk9MRElORywgMCk7DQoJCXhtbF9wYXJzZXJfc2V0X29wdGlvbigkcCwgWE1MX09QVElPTl9TS0lQX1dISVRFLCAxKTsNCgkJeG1sX3BhcnNlX2ludG9fc3RydWN0KCRwLCAkcmF3X3htbCwgJHhtbCwgJGlkeCk7DQoJCXhtbF9wYXJzZXJfZnJlZSgkcCk7DQoJfQ0KCWZvcigkaT0wOyRpPGNvdW50KCR4bWwsMSk7JGkrKyl7DQoJCS8vIHNldCB0aGUgY3VycmVudCBsZXZlbA0KCQkkbGV2ZWwgPSAkeG1sWyRpXVsnbGV2ZWwnXTsNCg0KCQlpZigkbGV2ZWw8MSlicmVhazsNCg0KCQkvLyBtYXJrIHRoaXMgbGV2ZWwncyB0YWcgaW4gdGhlIGFycmF5DQoJCSRrZXlzWyRsZXZlbF0gPSAnWycuJGkuJ10nOw0KCQkNCgkJLy8gaWYgd2UndmUgY29tZSBkb3duIGEgbGV2ZWwsIHNvcnQgb3V0cHV0IGFuZCBkZXN0cm95IHRoZSB1cHBlciBsZXZlbA0KCQlpZihjb3VudCgka2V5cyk+JGxldmVsKSB1bnNldCgka2V5c1tjb3VudCgka2V5cyldKTsNCg0KCQkvLyBpZ25vcmUgY2xvc2UgdGFncywgdGhleSdyZSB1c2VsZXNzDQoJCWlmKCR4bWxbJGldWyd0eXBlJ109PSJvcGVuIiB8fCAkeG1sWyRpXVsndHlwZSddPT0iY29tcGxldGUiKXsNCg0KCQkJLy8gYnVpbGQgdGhlIGV2YWxzdHJpbmcNCgkJCSRlID0gJyRvdXRwdXQnLmltcGxvZGUoJ1tcJ19jaGlsZHJlblwnXScsJGtleXMpOw0KDQoJCQkvLyBzZXQgdGhlIHRhZyBuYW1lDQoJCQlldmFsKCRlLidbXCdfbmFtZVwnXSA9ICR4bWxbJGldW1wndGFnXCddOycpOw0KDQoJCQkvLyBzZXQgdGhlIGF0dHJpYnV0ZXMNCgkJCWlmKCR4bWxbJGldWydhdHRyaWJ1dGVzJ10pew0KCQkJCWV2YWwoJGUuJ1tcJ19hdHRyaWJ1dGVzXCddID0gJHhtbFskaV1bXCdhdHRyaWJ1dGVzXCddOycpOw0KCQkJfQ0KCQkJDQoJCQkvLyBzZXQgdGhlIHZhbHVlDQoJCQlpZigkeG1sWyRpXVsndmFsdWUnXSl7DQoJCQkJZXZhbCgkZS4nW1wnX3ZhbHVlXCddID0gdHJpbSgkeG1sWyRpXVtcJ3ZhbHVlXCddKTsnKTsNCgkJCX0NCg0KCQl9DQoNCgl9DQoNCglyZXR1cm4gJG91dHB1dDsNCn0NCj8+|| 55243|function.xml-parse-into-struct|50|1122527208|Chris Hester|VGhlIGFycmF5IGdlbmVyYXRlZCBmcm9tIFhNTCBzdG9yZXMgbm90IG9ubHkgdGhlIGVsZW1lbnRzIGJ1dCBhbHNvIGFueSBzcGFjZXMgYW5kIGxpbmVicmVha3MgYmV0d2VlbiB0aGUgdGFncy4gVGhpcyByZXN1bHRzIGluIGEgbXVjaCBsb25nZXIgYXJyYXkuIChJIGhhZCAyNCBhcnJheSBmaWVsZHMgaW5zdGVhZCBvZiAxMCEpIFRvIGN1cmUgdGhpcyB1c2UgdGhlIGZvbGxvd2luZyBjb2RlIHdoZW4gY3JlYXRpbmcgdGhlIHBhcnNlcjoKCjw/cGhwCiR4bWxfcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCR4bWxfcGFyc2VyLFhNTF9PUFRJT05fU0tJUF9XSElURSwxKTsKPz4=|1|1 54106|function.xml-parse-into-struct|0|1119532284|PhF at madmac dot fr|VGhlIGNvZGUgcHJldmlvdXNseSBwb3N0ZWQgYnkgbm9vYiBhdCBub29ic3J1bGUgZG90IGNvbSBkb2Vzbid0IHdvcmsgd2hlbiB0aGUgc2FtZSB0YWcgbmFtZSBpcyB1c2VkIGF0IGRpZmZlcmVudCBsZXZlbHMuCihidXQgcGVyaGFwcyAiJHBocF91c2VkX3ByZWZpeCIgd2FzIGludGVuZGVkIGZvciB0aGF0ID8pCkZvciBleGFtcGxlOgo8UmF0ZWRTaGlwbWVudD4KICA8VHJhbnNwb3J0YXRpb25DaGFyZ2VzPgogICAgLi4uCiAgPC9UcmFuc3BvcnRhdGlvbkNoYXJnZXM+CiAgPFJhdGVkUGFja2FnZT4KICAgIDxUcmFuc3BvcnRhdGlvbkNoYXJnZXM+CiAgICAgIC4uLgogICAgPC9UcmFuc3BvcnRhdGlvbkNoYXJnZXM+CiAgPC9SYXRlZFBhY2thZ2U+CjwvUmF0ZWRTaGlwbWVudD4KPD9waHAKCSRwID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKCXhtbF9wYXJzZXJfc2V0X29wdGlvbigkcCwgWE1MX09QVElPTl9DQVNFX0ZPTERJTkcsIDApOwoJeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCRwLCBYTUxfT1BUSU9OX1NLSVBfV0hJVEUsIDEpOwoJeG1sX3BhcnNlX2ludG9fc3RydWN0KCRwLCAkVVBTeG1sLCAkdmFsdWVzLCAkaWR4KTsKCXhtbF9wYXJzZXJfZnJlZSgkcCk7CgkKCS8vIHRyYWNraW5nIHVzZWQga2V5cwoJJHVzZWRLZXlzID0gYXJyYXkoKTsKCSRkZWVwTGV2ZWwgPSAtMTsKCgkvLyBzdGFydCBhIHBocCBhcnJheSBzdHJpbmcgKGV2YWx1YXRlZCBsYXRlcikKCSRmb3JFdmFsUHJlZml4ID0gJyR4bWxfYXJyYXknOwoJCgkvLyBsb29wIHRocm91Z2h0IHRoZSB2YWx1ZSBhcnJheQoJZm9yZWFjaCAoJHZhbHVlcyBhcyAka2V5ID0+ICR2YWwpIHsKCQkkdGFnTmFtZSA9ICR2YWxbJ3RhZyddOyAvLyBwYXNzIHRoZSBrZXkgdGFnIGludG8gYSBtb3JlIGZyaWVuZGx5IGxvb2tpbmcgdmFyaWFibGUKCQkkbGV2ZWwgPSAkdmFsWydsZXZlbCddOyAvLyBpZGVtCgkJaWYoJHZhbFsndHlwZSddID09ICdvcGVuJykgewoJCQkkZGVlcExldmVsKys7IC8vIGluY3JlYXNlIGRlZXAgbGV2ZWwKCQkJJGZvckV2YWxQcmVmaXggLj0gJ1tcJycuICR0YWdOYW1lIC4nXCddJzsKCQkJCgkJCS8vIGJlZ2luIHVzZWQga2V5cyBjaGVja3MgdG8gYWxsb3cgbXVsdGlkaW1lbnNpb25hdGl0eSB1bmRlciB0aGUgc2FtZSB0YWcKCQkJKGlzc2V0KCR1c2VkS2V5c1skbGV2ZWxdWyR0YWdOYW1lXSkpID8gJHVzZWRLZXlzWyRsZXZlbF1bJHRhZ05hbWVdKysgOiAkdXNlZEtleXNbJGxldmVsXVskdGFnTmFtZV0gPSAwOwoJCQkkZm9yRXZhbFByZWZpeCAuPSAnWycuICR1c2VkS2V5c1skbGV2ZWxdWyR0YWdOYW1lXSAuJ10nOwoJCX0gCgkJaWYoJHZhbFsndHlwZSddID09ICdjb21wbGV0ZScpIHsKCQkJKCRsZXZlbCA+ICRkZWVwTGV2ZWwpID8gJGRlZXBMZXZlbCsrIDogJyc7IC8vIGluY3JlYXNlICRkZWVwTGV2ZWwgb25seSBpZiBjdXJyZW50IGxldmVsIGlzIGJpZ2dlcgoJCQkkdGFnVmFsdWUgPSBhZGRzbGFzaGVzKCR2YWxbJ3ZhbHVlJ10gKTsgLy8gZm9ybWF0IHRoZSB2YWx1ZSBmb3IgZXZhbHVhdGlvbiBhcyBhIHN0cmluZwoJCQkkZm9yRXZhbFN1ZmZpeCA9ICdbXCcnLiAkdGFnTmFtZSAuJ1wnXSA9IFwnJy4gJHRhZ1ZhbHVlIC4nXCc7JzsgLy8gY3JlYXRlIGEgc3RyaW5nIHRvIGFwcGVuZCB0byB0aGUgY3VycmVudCBwcmVmaXgKCQkJJGZvckV2YWwgPSAkZm9yRXZhbFByZWZpeCAuICRmb3JFdmFsU3VmZml4OyAvLyAod2l0aG91dCAiJHBocF91c2VkX3ByZWZpeCIuLi4pCgkJCWV2YWwoJGZvckV2YWwpOyAvLyB3cml0ZSB0aGUgc3RyaW5nIHRvIHRoZSBhcnJheSBzdHJ1Y3R1cmUKCQl9CgkJaWYoJHZhbFsndHlwZSddID09ICdjbG9zZScpIHsKCQkJdW5zZXQoJHVzZWRLZXlzWyRkZWVwTGV2ZWxdKTsgLy8gU3VwcHJlc3MgdGFnbmFtZSdzIGtleXMgdXNlbGVzcwoJCQkkZGVlcExldmVsLS07CgkJCSRmb3JFdmFsUHJlZml4ID0gc3Vic3RyKCRmb3JFdmFsUHJlZml4LCAwLCBzdHJycG9zKCRmb3JFdmFsUHJlZml4LCAnWycpKTsgLy8gY3V0IG9mZiB0aGUgdXNlZCBrZXlzIG5vZGUKCQkJJGZvckV2YWxQcmVmaXggPSBzdWJzdHIoJGZvckV2YWxQcmVmaXgsIDAsIHN0cnJwb3MoJGZvckV2YWxQcmVmaXgsICdbJykpOyAvLyBjdXQgb2ZmIHRoZSBlbmQgbGV2ZWwgb2YgdGhlIGFycmF5IHN0cmluZyBwcmVmaXgKCQl9Cgl9CmVjaG8gJzxwcmU+JzsKcHJpbnRfciAoJHhtbF9hcnJheSk7CmVjaG8gJzwvcHJlPic7Cj8+CgpNQURtYWMgOy0p|| 53864|function.xml-parse-into-struct|0|1118825183|peter at elemental dot org|UXVpY2sgYWRkZW5kdW0gdG8gbXkgcG9zdCBiZWxvdy4uLiBUaGUgY29kZSBkb2VzICpub3QqIGhhbmRsZSBjYXNlcyB3aGVyZSBtdWx0aXBsZSBlbGVtZW50cyBhcmUgdXNlZCB3aXRob3V0IGF0dHJpYnV0ZSBJRHMsIGFzIGlzIHRoZSBjYXNlIHdpdGggdGhlIG1vbGRiIGV4YW1wbGUuICAoSXQgaXMgcHJvYmFibHkgd29ydGggbm90aW5nIHRoYXQgc29tZSBvZiB0aGUgb3RoZXIgY29kZSBiZWxvdyBkb2Vzbid0IGRvIHRoaXMgZWl0aGVyLCBhbmQgaXMgc3RpbGwgbW9yZSBjb21wbGV4LikKCkl0IGlzIG5vdCBkaWZmaWN1bHQgdG8gYWRkIHRoYXQgZnVuY3Rpb25hbGl0eSwgYnV0IEkgaGF2ZSB5ZXQgdG8gZmluZCBhbiBlbGVnYW50IHdheSB0byBpbnRlZ3JhdGUgdGhhdCBmZWF0dXJlLCBhbmQgc2luY2UgSSBkb24ndCBuZWVkIHRoYXQgZnVuY3Rpb25hbGl0eSBhdCB0aGUgbW9tZW50LCBJJ20gZ29pbmcgbGVhdmUgdGhhdCBhcyBhbiBleGVyY2lzZSB0byB0aGUgcmVhZGVyLiAgOy0pCgotcC4=|| 53840|function.xml-parse-into-struct|0|1118765399|peter at elemental dot org|U29tZSBvZiB0aGUgY29kZSBwb3N0ZWQgcHJldmlvdXNseSBzZWVtZWQgYWJzdXJkbHkgY29tcGxleCwgc28gSSB0aG91Z2h0IEknZCBzZWUgaWYgSSBjb3VsZCBzaW1wbGlmeSB0aGluZ3MgYSBiaXQuIEhlcmUncyB3aGF0IEkgY2FtZSB1cCB3aXRoLiAgKEknbSBzdGlsbCBhIFBIUCBuZXdiaWUsIHNvIHBlcmhhcHMgSSBzaW1wbGlmaWVkIHRvbyBtdWNoLiAgOy0pICBVbnRlc3RlZCBmb3Igc3BlZWQsIGJ1dCBpdCAqc2hvdWxkKiBiZSBwcmV0dHkgcXVpY2sgc2luY2UgaXQgdXNlcyByZWZlcmVuY2VzIGluc3RlYWQgb2YgbG9va3VwcyBvciAoZ2FjaykgZXZhbHMuCgpFbmpveSEKCi8qCiAqICBDb252ZXJ0IGEgc3RyaW5nIGNvbnRhaW5pbmcgWE1MIGludG8gYSBuZXN0ZWQgYXJyYXkKICoKICogIFRha2VzIGEgcmF3IFhNTCBzdHJpbmcgYXMgaW5wdXQKICogIFJldHVybnMgYSBuZXN0ZWQgYXJyYXkKICovCgpmdW5jdGlvbiB4bWwyYXJyYXkgKCR4bWxfZGF0YSkKewogICAgLy8gcGFyc2UgdGhlIFhNTCBkYXRhc3RyaW5nCiAgICAkeG1sX3BhcnNlciA9IHhtbF9wYXJzZXJfY3JlYXRlICgpOwogICAgeG1sX3BhcnNlX2ludG9fc3RydWN0ICgkeG1sX3BhcnNlciwgJHhtbF9kYXRhLCAkdmFscywgJGluZGV4KTsKICAgIHhtbF9wYXJzZXJfZnJlZSAoJHhtbF9wYXJzZXIpOwoKICAgIC8vIGNvbnZlcnQgdGhlIHBhcnNlZCBkYXRhIGludG8gYSBQSFAgZGF0YXR5cGUKICAgICRwYXJhbXMgPSBhcnJheSgpOwogICAgJHB0cnNbMF0gPSAmICRwYXJhbXM7ICAgCiAgICBmb3JlYWNoICgkdmFscyBhcyAkeG1sX2VsZW0pIHsKICAgICAgICAkbGV2ZWwgPSAkeG1sX2VsZW1bJ2xldmVsJ10gLSAxOwogICAgICAgIHN3aXRjaCAoJHhtbF9lbGVtWyd0eXBlJ10pIHsKICAgICAgICBjYXNlICdvcGVuJzoKICAgICAgICAgICAgJHRhZ19vcl9pZCA9IChhcnJheV9rZXlfZXhpc3RzICgnYXR0cmlidXRlcycsICR4bWxfZWxlbSkpID8gJHhtbF9lbGVtWydhdHRyaWJ1dGVzJ11bJ0lEJ10gOiAkeG1sX2VsZW1bJ3RhZyddOwogICAgICAgICAgICAkcHRyc1skbGV2ZWxdWyR0YWdfb3JfaWRdID0gYXJyYXkgKCk7CiAgICAgICAgICAgICRwdHJzWyRsZXZlbCsxXSA9ICYgJHB0cnNbJGxldmVsXVskdGFnX29yX2lkXTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnY29tcGxldGUnOgogICAgICAgICAgICAkcHRyc1skbGV2ZWxdWyR4bWxfZWxlbVsndGFnJ11dID0gKGlzc2V0ICgkeG1sX2VsZW1bJ3ZhbHVlJ10pKSA/ICR4bWxfZWxlbVsndmFsdWUnXSA6ICcnOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9CiAgICAKICAgIHJldHVybiAoJHBhcmFtcyk7Cgp9|| 49334|function.xml-parse-into-struct|0|1106564356|noob at noobsrule dot com|VGhpcyBpcyBteSBmaXJzdCB0aW1lIGNvbnRyaWJ1dGluZyBidXQgSSBmb3VuZCBhbGwgdGhlIGV4YW1wbGVzIGVpdGhlciBkaWRuJ3Qgd29yayBvciB3ZXJlIGJleW9uZCBteSBjb21wcmVoZW5zaW9uLiAgSSBhbHNvIHdhbnRlZCB0byBtYWludGFpbiB0aGUgWE1MIG11bHRpLWRpbWVuc2lvbmFsaXR5IHNvIEkgY291bGQgZG8gbG9vcHMgYmFzZWQgb24ga2V5cyBJIHdhcyBleHBlY3RpbmcgcmF0aGVyIHRoYW4gbnVtYmVycyBvciBzb21lIG90aGVyIHdoYXRub3QuICBUaGlzIHNjcmlwdCBpcyBwcm9iYWJseSB3YXkgaW5lZmZpY2llbnQsIGJ1dCBzaG91bGQgZ2l2ZSB5b3UgYSBtdWx0aWRpbWVuc2lvbmFsIGFycmF5IHdpdGggYSBkZXB0aCB0aGF0IHdpbGwgbWF0Y2ggdGhlIFhNTCBzb3VyY2UuICBHcmVhdCBmb3Igc2l0dWF0aW9ucyB3aGVuIHlvdSBhcmVuJ3Qgc3VyZSB3aGF0IHlvdSdsbCBiZSBnZXR0aW5nIGJhY2suICBJdHMgYWxzbyBvbmx5IGJhc2VkIG9uIHRoZSB2YWx1ZXMgYXJyYXkgb2YgeG1sX3BhcnNlX2ludG9fc3RyKCkgdXNpbmcgdGhlIDMgdGFnIHR5cGVzIChvcGVuLCBjb21wbGV0ZSwgYW5kIGNsb3NlKSAtLSBob3BlZnVsbHkgaXQgd2lsbCBtYWtlIG1vcmUgc2Vuc2UgdG8gb3RoZXIgbm9vYnMuCgpCYXNpY2FsbHkgaXQganVzdCBjb25zdHJ1Y3RzIGEgc3RyaW5nICgkcGhwX3ByZWZpeCkgdGhhdCBpcyB0d2Vha2VkIGlmIGl0IGhpdHMgYW4gIm9wZW4iIG9yICJjbG9zZSIgdGFnIGFuZCBldmFsdWF0ZWQgaWYgaXQgaGl0cyBhICJjb21wbGV0ZSIgdGFnLgoKVGhhbmtzLgoKPD9waHAKCiMgaW5pdGlhdGUgY3VybCBzZXNzaW9uLi4uCiRjaCA9IGN1cmxfaW5pdCggImh0dHA6Ly95b3VydGFyZ2V0aG9zdCIgKSBvciBkaWUgKCAiY291bGQgbm90IGluaXRpYWxpemUgY3VybCIgKTsgCgojIHNldCBjdXJsIG9wdGlvbnMuLi4KY3VybF9zZXRvcHQoICRjaCwgQ1VSTE9QVF9IRUFERVIsIDAgKTsKY3VybF9zZXRvcHQoICRjaCwgQ1VSTE9QVF9QT1NULCAxICk7CmN1cmxfc2V0b3B0KCAkY2gsIENVUkxPUFRfUE9TVEZJRUxEUywgJHJlcXVlc3Rfc3RyICk7CmN1cmxfc2V0b3B0KCAkY2gsIENVUkxPUFRfRk9MTE9XTE9DQVRJT04sIDAgKTsKY3VybF9zZXRvcHQoICRjaCwgQ1VSTE9QVF9SRUZFUkVSLCBodHRwczovL2Zvb2Jhci5jb20iICk7CmN1cmxfc2V0b3B0KCAkY2gsIENVUkxPUFRfUkVUVVJOVFJBTlNGRVIsIDEgKTsKCiMgZXhlY3V0ZSBjdXJsIGNvbW1hbmRzLi4uCiRjdXJsX3Jlc3VsdCA9IGN1cmxfZXhlYyggJGNoICkgb3IgZGllICggImNvdWxkIG5vdCBleGVjdXRlIHRoZSBwb3N0IiApOwpjdXJsX2Nsb3NlKCAkY2ggKTsgLy8gY2xvc2UgY3VybCBzZXNzaW9uIAoKIyBwYXNzIHRoZSBYTUwgcmVzdWx0IGludG8gMiBhcnJheXMgKCBpbmRleCBhbmQgdmFsdWVzICkuLi4KJHAgPSB4bWxfcGFyc2VyX2NyZWF0ZSgpOwp4bWxfcGFyc2VyX3NldF9vcHRpb24oJHAsIFhNTF9PUFRJT05fQ0FTRV9GT0xESU5HLCAwKTsKeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCRwLCBYTUxfT1BUSU9OX1NLSVBfV0hJVEUsIDEpOwp4bWxfcGFyc2VfaW50b19zdHJ1Y3QoJHAsICRjdXJsX3Jlc3VsdCwgJHZhbHMsICRpbmRleCk7CnhtbF9wYXJzZXJfZnJlZSgkcCk7CgojIGNyZWF0ZSBhbiBlbXB0eSB1c2VkIGtleSB0cmFja2VyLi4uCiR1c2VkX2tleXMgPSBhcnJheSgpOwoKIyBzdGFydCBhIHBocCBhcnJheSBzdHJpbmcgKGV2YWx1YXRlZCBsYXRlcikuLi4KJHBocF9wcmVmaXggPSAiJCIuIm15X2FycmF5IjsKCiMgbG9vcCB0aHJvdWdoIHRoZSB2YWx1ZXMgYXJyYXkuLi4KZm9yZWFjaCAoJHZhbHMgYXMgJGtleSA9PiAkdmFsKSB7CglpZiggJHZhbFsndHlwZSddID09ICJvcGVuIiApIHsKCQkkbXlfdGFnID0gJHZhbFsndGFnJ107IC8vIHBhc3MgdGhlIGtleSB0YWcgaW50byBhIG1vcmUgZnJpZW5kbHkgbG9va2luZyB2YXJpYWJsZS4uLgoJCSRwaHBfcHJlZml4IC49ICJbJyIuJG15X3RhZy4iJ10iOyAjIGFkZCBhIG5ldyBsZXZlbCB0byB0aGUgYXJyYXkgc3RyaW5nLi4uCgoJCSMgYmVnaW4gdXNlZCBrZXkgY2hlY2tzIHRvIGFsbG93IG11bHRpZGltZW5zaW9uYWxpdHkgdW5kZXIgdGhlIHNhbWUgdGFnLCBhZGRzIGEgbnVtYmVyIHRvIHRoZSBwcmVmaXggaWYgbmVjZXNzYXJ5Li4uCgkJaWYoICEgYXJyYXlfa2V5X2V4aXN0cyggJG15X3RhZywgJHVzZWRfa2V5cyApICkgewoJCQkkdXNlZF9rZXlzWyRteV90YWddID0gMDsKCQkJJHBocF9wcmVmaXggLj0gIlsiLiR1c2VkX2tleXNbJG15X3RhZ10uIl0iOwoJCX1lbHNlIHsKCQkJJHVzZWRfa2V5c1skbXlfdGFnXSsrOyAvLyBpbmNyZW1lbnQgdGhlIGtleSB0cmFja2VyIHRvIGF2b2lkIG92ZXJ3cml0aW5nIGV4aXN0aW5nIGtleS4uLgoJCQkkcGhwX3ByZWZpeCAuPSAiWyIuJHVzZWRfa2V5c1skbXlfdGFnXS4iXSI7CgkJfQoJfSBlbHNlaWYoICR2YWxbJ3R5cGUnXSA9PSAiY29tcGxldGUiICkgewoJCSRteV92YWx1ZSA9IGFkZHNsYXNoZXMoICR2YWxbJ3ZhbHVlJ10gKTsgIyBmb3JtYXQgdGhlIHZhbHVlIGZvciBldmFsdWF0aW9uIGFzIGEgc3RyaW5nLi4uCgkJJHBocF9zdWZmaXggPSAiWyciLiR2YWxbJ3RhZyddLiInXSA9IFwiIi4kbXlfdmFsdWUuIlwiOyI7ICMgY3JlYXRlIGEgc3RyaW5nIHdpdGggdGhlIHRhZyBhbmQgdmFsdWUgdG8gYXBwZW5kIHRvIHRoZSBjdXJyZW50IHByZWZpeCAoanVzdCB1c2VkIGhlcmUpLi4uCgkJJHBocF9zdHIgPSAkcGhwX3ByZWZpeC4kcGhwX3VzZWRfcHJlZml4LiRwaHBfc3VmZml4OwoJCWV2YWwoICRwaHBfc3RyICk7ICMgd3JpdGUgdGhlIHN0cmluZyB0byB0aGUgYXJyYXkgc3RydWN0dXJlLi4uCgl9CglpZiggJHZhbFsndHlwZSddID09ICJjbG9zZSIgKSB7CgkJJHBocF9wcmVmaXggPSBzdWJzdHIoICRwaHBfcHJlZml4LCAwLCBzdHJycG9zKCAkcGhwX3ByZWZpeCwgIlsiICkgKTsgIyBjdXQgb2ZmIHRoZSB1c2VkIGtleXMgbm9kZS4uLgoJCSRwaHBfcHJlZml4ID0gc3Vic3RyKCAkcGhwX3ByZWZpeCwgMCwgc3RycnBvcyggJHBocF9wcmVmaXgsICJbIiApICk7ICMgY3V0IG9mZiB0aGUgZW5kIGxldmVsIG9mIHRoZSBhcnJheSBzdHJpbmcgcHJlZml4Li4uCgl9Cn0KCmVjaG8gIjxwcmU+IjsKLy9wcmludF9yICgkaW5kZXgpOwovL2VjaG8gIjxicj48YnI+PGJyPiI7Ci8vcHJpbnRfciAoJHZhbHMpOwovL2VjaG8gIjxicj48YnI+PGJyPiI7CnByaW50X3IgKCRteV9hcnJheSk7CmVjaG8gIjwvcHJlPiI7Cgo/Pg==|| 49154|function.xml-parse-into-struct|0|1106029987|dudus at onet dot pl|VGhpcyBmdW5jdGlvbiByZXR1cm4gYXJyYXkgZnJvbSBYTUwuIEluY2x1ZGVkIGF0dHJpYnV0ZXMgYW5kIHRhZ3MgaW4gc2FtZSBsZXZlbC4KSSB3cm90ZSB0aGlzIGZ1bmN0aW9uIGJhc2VkIG9uIG1tdXN0YWZhIGNvZGUuIAoKZW5qb3khIApkVURBCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgo8PwpmdW5jdGlvbiBYTUx0b0FycmF5KCRYTUwpCnsKCSR4bWxfcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKCXhtbF9wYXJzZV9pbnRvX3N0cnVjdCgkeG1sX3BhcnNlciwgJFhNTCwgJHZhbHMpOwoJeG1sX3BhcnNlcl9mcmVlKCR4bWxfcGFyc2VyKTsKCS8vIHd5em5hY3phbXkgdGFibGljZSB6IHBvd3RhcnphamFjeW1pIHNpZSB0YWdhbWkgbmEgdHltIHNhbXltIHBvemlvbWllIAoJJF90bXA9Jyc7Cglmb3JlYWNoICgkdmFscyBhcyAkeG1sX2VsZW0pCgl7IAoJCSR4X3RhZz0keG1sX2VsZW1bJ3RhZyddOwoJCSR4X2xldmVsPSR4bWxfZWxlbVsnbGV2ZWwnXTsKCQkkeF90eXBlPSR4bWxfZWxlbVsndHlwZSddOwoJCWlmICgkeF9sZXZlbCE9MSAmJiAkeF90eXBlID09ICdjbG9zZScpCgkJewoJCQlpZiAoaXNzZXQoJG11bHRpX2tleVskeF90YWddWyR4X2xldmVsXSkpCgkJCQkkbXVsdGlfa2V5WyR4X3RhZ11bJHhfbGV2ZWxdPTE7CgkJCWVsc2UKCQkJCSRtdWx0aV9rZXlbJHhfdGFnXVskeF9sZXZlbF09MDsKCQl9CgkJaWYgKCR4X2xldmVsIT0xICYmICR4X3R5cGUgPT0gJ2NvbXBsZXRlJykKCQl7CgkJCWlmICgkX3RtcD09JHhfdGFnKSAKCQkJCSRtdWx0aV9rZXlbJHhfdGFnXVskeF9sZXZlbF09MTsKCQkJJF90bXA9JHhfdGFnOwoJCX0KCX0KCS8vIGplZHppZW15IHBvIHRhYmxpY3kKCWZvcmVhY2ggKCR2YWxzIGFzICR4bWxfZWxlbSkKCXsgCgkJJHhfdGFnPSR4bWxfZWxlbVsndGFnJ107CgkJJHhfbGV2ZWw9JHhtbF9lbGVtWydsZXZlbCddOwoJCSR4X3R5cGU9JHhtbF9lbGVtWyd0eXBlJ107CgkJaWYgKCR4X3R5cGUgPT0gJ29wZW4nKSAKCQkJJGxldmVsWyR4X2xldmVsXSA9ICR4X3RhZzsKCQkkc3RhcnRfbGV2ZWwgPSAxOwoJCSRwaHBfc3RtdCA9ICckeG1sX2FycmF5JzsKCQlpZiAoJHhfdHlwZT09J2Nsb3NlJyAmJiAkeF9sZXZlbCE9MSkgCgkJCSRtdWx0aV9rZXlbJHhfdGFnXVskeF9sZXZlbF0rKzsKCQl3aGlsZSgkc3RhcnRfbGV2ZWwgPCAkeF9sZXZlbCkKCQl7CiAgCQkJJHBocF9zdG10IC49ICdbJGxldmVsWycuJHN0YXJ0X2xldmVsLiddXSc7CiAgCQkJaWYgKGlzc2V0KCRtdWx0aV9rZXlbJGxldmVsWyRzdGFydF9sZXZlbF1dWyRzdGFydF9sZXZlbF0pICYmICRtdWx0aV9rZXlbJGxldmVsWyRzdGFydF9sZXZlbF1dWyRzdGFydF9sZXZlbF0pIAogIAkJCQkkcGhwX3N0bXQgLj0gJ1snLigkbXVsdGlfa2V5WyRsZXZlbFskc3RhcnRfbGV2ZWxdXVskc3RhcnRfbGV2ZWxdLTEpLiddJzsKICAJCQkkc3RhcnRfbGV2ZWwrKzsKCQl9CgkJJGFkZD0nJzsKCQlpZiAoaXNzZXQoJG11bHRpX2tleVskeF90YWddWyR4X2xldmVsXSkgJiYgJG11bHRpX2tleVskeF90YWddWyR4X2xldmVsXSAmJiAoJHhfdHlwZT09J29wZW4nIHx8ICR4X3R5cGU9PSdjb21wbGV0ZScpKQoJCXsKCQkJaWYgKCFpc3NldCgkbXVsdGlfa2V5MlskeF90YWddWyR4X2xldmVsXSkpCgkJCQkkbXVsdGlfa2V5MlskeF90YWddWyR4X2xldmVsXT0wOwoJCQllbHNlCgkJCQkkbXVsdGlfa2V5MlskeF90YWddWyR4X2xldmVsXSsrOwoJCSAJJGFkZD0nWycuJG11bHRpX2tleTJbJHhfdGFnXVskeF9sZXZlbF0uJ10nOyAKCQl9CgkJaWYgKGlzc2V0KCR4bWxfZWxlbVsndmFsdWUnXSkgJiYgdHJpbSgkeG1sX2VsZW1bJ3ZhbHVlJ10pIT0nJyAmJiAhYXJyYXlfa2V5X2V4aXN0cygnYXR0cmlidXRlcycsJHhtbF9lbGVtKSkKCQl7CgkJCWlmICgkeF90eXBlID09ICdvcGVuJykgCgkJCQkkcGhwX3N0bXRfbWFpbj0kcGhwX3N0bXQuJ1skeF90eXBlXScuJGFkZC4nW1wnY29udGVudFwnXSA9ICR4bWxfZWxlbVtcJ3ZhbHVlXCddOyc7CgkJCWVsc2UKCQkJCSRwaHBfc3RtdF9tYWluPSRwaHBfc3RtdC4nWyR4X3RhZ10nLiRhZGQuJyA9ICR4bWxfZWxlbVtcJ3ZhbHVlXCddOyc7CgkJCWV2YWwoJHBocF9zdG10X21haW4pOwoJCX0KCQlpZiAoYXJyYXlfa2V5X2V4aXN0cygnYXR0cmlidXRlcycsJHhtbF9lbGVtKSkKCQl7CgkJCWlmIChpc3NldCgkeG1sX2VsZW1bJ3ZhbHVlJ10pKQoJCQl7CgkJCQkkcGhwX3N0bXRfbWFpbj0kcGhwX3N0bXQuJ1skeF90YWddJy4kYWRkLidbXCdjb250ZW50XCddID0gJHhtbF9lbGVtW1wndmFsdWVcJ107JzsKCQkJCWV2YWwoJHBocF9zdG10X21haW4pOwoJCQl9CgkJCWZvcmVhY2ggKCR4bWxfZWxlbVsnYXR0cmlidXRlcyddIGFzICRrZXk9PiR2YWx1ZSkKCQkJewoJCQkJJHBocF9zdG10X2F0dD0kcGhwX3N0bXQuJ1skeF90YWddJy4kYWRkLidbJGtleV0gPSAkdmFsdWU7JzsKCQkJCWV2YWwoJHBocF9zdG10X2F0dCk7CgkJCX0KCQl9Cgl9CiAJcmV0dXJuICR4bWxfYXJyYXk7Cn0JLy8gRU5EIFhNTHRvQXJyYXkKPz4=|| 45052|function.xml-parse-into-struct|100|1093337499|happyseb at free dot fr|SSB3b3VsZCBqdXN0IGFkZCBzb21ldGhpbmcgYWJvdXQgdGhlIHNvbHV0aW9uIHByb3Bvc2VkIGJ5ICJnb3Jkb24gYXQga2FuYXphd2EgZG90IGFjIGRvdCBqcCIuCgpTb21ldGhpbmcgd2VudCB3cm9uZyBhYm91dCB0aGUgZmFjdCB0aGF0ICJjZGF0YSIgYXJlIHRyZWF0ZWQgdGhlIHNhbWUgd2F5IGFzICJjb21wbGV0ZSIgaW4gdGhlIHhtbF9nZXRfY2hpbGRyZW4gZmlyc3QgYW5kIGluIHRoZSB4bWxfZ2V0X2NoaWxkIHRoZW4uCgpXaGVuID8Kd2l0aCB0aGlzIG1ldGhvZCwgc29tZXRoaW5nIGxpa2UgdGhpcyA6Cjx0YWdBPgogIDx0YWdCPnZhbHVlQjwvdGFnQj4KICB2YWx1ZUEKICA8dGFnQz52YWx1ZUM8L3RhZ0M+CjwvdGFnQT4KaXMgY29uc2lkZXJlZCBhcyB0aGUgc2FtZSB0aGluZyBhcwo8dGFnQT4KICA8dGFnQj52YWx1ZUI8L3RhZ0I+CiAgPHRhZ0E+dmFsdWVBPC90YWdBPgogIDx0YWdDPnZhbHVlQzwvdGFnQz4KPC90YWdBPgoKVGhlIGFsZ29yaXRobSBpcyBub21vcmUgYmlqZWN0aXZlLgoKRXZlbiBpZiBpdCBtaWdodCBub3QgYmUgcGVyZmVjdCA6LSkgaSBwcm9wb3NlIGEgbGl0dGxlIG1vZGlmaWNhdGlvbiBvZiB0aGUgeG1sX2dldF9jaGlsZCBmdW5jdGlvbiA6CgpmdW5jdGlvbiB4bWxfZ2V0X2NoaWxkKCYkdiwgJGNoaWxkcmVuPU5VTEwpIHsKICAgICAgJGMgPSBhcnJheSgpOyAvLyB0aGUgImNoaWxkIgogICAgICBpZiAoaXNzZXQoJHZbJ3RhZyddKSAmJiAkdlsndHlwZSddICE9ICdjZGF0YScpICRjWyd0YWcnXSA9ICR2Wyd0YWcnXTsKICAgICAgaWYgKGlzc2V0KCR2Wyd2YWx1ZSddKSkgJGNbJ3ZhbHVlJ10gPSAkdlsndmFsdWUnXTsKICAgICAgaWYgKGlzc2V0KCR2WydhdHRyaWJ1dGVzJ10pKSAkY1snYXR0cmlidXRlcyddID0gJHZbJ2F0dHJpYnV0ZXMnXTsKICAgICAgaWYgKGlzX2FycmF5KCRjaGlsZHJlbikpICRjWydjaGlsZHJlbiddID0gJGNoaWxkcmVuOwogICAgICByZXR1cm4gJGM7Cn0KCm1vcmVvdmVyLCB0aGUgZm9sbG93aW5nIGZ1bmN0aW9uIHdpbGwgdGFrZSB0aGUgdHJlZSAobWFkZSBmcm9tIHRoZSB4bWxfZ2V0X3RyZWUgZnVuY3Rpb24pIGFzIGEgcGFyYW1ldGVyIGFuZCBidWlsZCB0aGUgeG1sIGNvbnRlbnQgYmFjawoKICAgIC8qCiAgICAvLyBzZXRUcmVlCiAgICAvLyBzZXQgeG1sIFRyZWUgZnJvbSBhIHdlbGwtZm9ybWVkIGFycmF5CiAgICAvLyBtYW5hZ2UgaW5kZW50YXRpb24KICAgIC8vIFBhcmFtZXRlcnMgYXJlIDoKICAgIC8vICQxIChuZWVkZWQpIDogVHJlZSB0byB0cmFuc2Zvcm0KICAgIC8vICQyIChvcHRpb25hbCkgOiBJbmRlbnRhdGlvbiB0eXBlIChkZWZhdWx0IGlzIG9uZSB0YWJ1bGF0aW9uKQogICAgLy8gJDMgKG9wdGlvbmFsKSA6IEZpcnN0IGluZGVudCAoZGVmYXVsdCBpcyBlbXB0eSBzdHJpbmcpCiAgICAqLwoKICAgIGZ1bmN0aW9uIHNldFRyZWUoJEF0cmVlLCAkaW5kZW50VHlwZSA9ICcJJywgJFNpbmRlbnQgPSAnJykKICAgIHsKICAgICAgaWYgKCEgaXNzZXQgKCRBdHJlZVsndGFnJ10pICYmIGlzc2V0ICgkQXRyZWVbJ3ZhbHVlJ10pKSByZXR1cm4gKCRTaW5kZW50LnRyaW0oJEF0cmVlWyd2YWx1ZSddKS4iXHJcbiIpIDsKICAgICAgZWxzZSB7CiAgICAgICAgJFN0ZW1wID0gJFNpbmRlbnQuJzwnLiRBdHJlZVsndGFnJ10uJyAnIDsKICAgICAgICBpZiAoaXNzZXQgKCRBdHJlZVsnYXR0cmlidXRlcyddKSAmJiBpc19hcnJheSAoJEF0cmVlWydhdHRyaWJ1dGVzJ10pKSB7CiAgICAgICAgICBmb3JlYWNoICgkQXRyZWVbJ2F0dHJpYnV0ZXMnXSBhcyAkQWF0dHJpYnV0ZSA9PiAkU3ZhbHVlKSAkU3RlbXAgLj0gJEFhdHRyaWJ1dGUuJz0iJy4kU3ZhbHVlLiciICcgOwogICAgICAgIH0KICAgICAgICBpZiAoISBpc3NldCAoJEF0cmVlWydjaGlsZHJlbiddKSAmJiAhIGlzc2V0ICgkQXRyZWVbJ3ZhbHVlJ10pKSAkU3RlbXAgLj0gJy8+Jy4iXHJcbiIgOwogICAgICAgIGVsc2UgewogICAgICAgICAgJFN0ZW1wIC49ICc+Jy4iXHJcbiIgOwogICAgICAgICAgaWYgKGlzc2V0ICgkQXRyZWVbJ3ZhbHVlJ10pKSAkU3RlbXAgLj0gJFNpbmRlbnQuJGluZGVudFR5cGUudHJpbSgkQXRyZWVbJ3ZhbHVlJ10pLiJcclxuIiA7CiAgICAgICAgICBpZiAoaXNzZXQgKCRBdHJlZVsnY2hpbGRyZW4nXSkgJiYgaXNfYXJyYXkgKCRBdHJlZVsnY2hpbGRyZW4nXSkpCiAgICAgICAgICAgIGZvcmVhY2ggKCRBdHJlZVsnY2hpbGRyZW4nXSBhcyAkQWNoaWxkKSAkU3RlbXAgLj0gJHRoaXMtPnNldFRyZWUoJEFjaGlsZCwgJGluZGVudFR5cGUsICRTaW5kZW50LiRpbmRlbnRUeXBlKSA7CiAgICAgICAgICAkU3RlbXAgLj0gJFNpbmRlbnQuJzwvJy4kQXRyZWVbJ3RhZyddLic+Jy4iXHJcbiIgOwogICAgICAgIH0KICAgICAgICByZXR1cm4gKCRTdGVtcCkgOwogICAgICB9CiAgICB9|1|0 43203|function.xml-parse-into-struct|0|1087164730|sdh33 at cornell dot edu|KFRoZSBwcmV2aW91cyBwb3N0IEkgd3JvdGUgd2FzIGluY29ycmVjdC4gIEkgZml4IHRoYXQgaGVyZWluKQpJIHVzZWQgdGhlIGFsZ29yaXRobSBmcm9tIHN0ZXBoYW5lIGZvciB3cml0aW5nIGJhY2sgdG8gYSBmaWxlLCBidXQgcmFuIGludG8gdGhlIGZvbGxvd2luZyBwcm9ibGVtLiAgTXkgb3JpZ2luYWwgWE1MIGxvb2tzIGxpa2UKCjxFTlRSWSBpZD0iMSI+IC4uLiA8L0VOVFJZPjxFTlRSWSBpZD0iMiI+IC4uLiA8L0VOVFJZPgoKVGhpcyBnb3Qgc2F2ZWQgYmFjayBhcwoKPDE+IC4uLiA8LzE+PDI+IC4uLiA8LzI+LAoKd2hpY2ggZXhwYXQgZG9lc24ndCBsaWtlLiAgU28gSSBwcm9wb3NlIHRoZSBmb2xsb3dpbmcgbW9kaWZpY2F0aW9uOgoKZnVuY3Rpb24gd3JpdGVYbWxUb0ZpbGUoJGRhdGEsICRmLCAkbml2ID0gMCkgewogIGZvcmVhY2goJGRhdGEgYXMgJG5hbWUgPT4gJGVsZW0pIHsKICAgIGlmIChwcmVnX21hdGNoKCIvXEFbMC05XS8iLCRuYW1lKSkgewogICAgICAkb3BlbiA9ICJFTlRSWSBpZD1cIiRuYW1lXCIiOyAkbmFtZSA9ICJFTlRSWSI7CiAgICB9IGVsc2UgewogICAgICAkb3BlbiA9ICRuYW1lOwogICAgfQogICAgaWYoaXNfYXJyYXkoJGVsZW0pKSB7CiAgICAgIGZ3cml0ZSgkZiwgc3RyX3JlcGVhdCgiICAiLCAkbml2KS4iPCIuJG9wZW4uIj4iLiJcbiIpOwogICAgICB3cml0ZVhtbFRvRmlsZSgkZWxlbSwgJGYsICRuaXYgKyAxKTsKICAgICAgZndyaXRlKCRmLCBzdHJfcmVwZWF0KCIgICIsICRuaXYpLiI8LyIuJG5hbWUuIj4iLiJcbiIpOwogICAgfSBlbHNlIHsKICAgICAgZndyaXRlKCRmLCBzdHJfcmVwZWF0KCIgICIsICRuaXYpLiI8Ii4kb3Blbi4iPiIuJGVsZW0uIjwvIi4kbmFtZS4iPiIuIlxuIik7CiAgICB9CiAgfQp9|| 41399|function.xml-parse-into-struct|0|1081425296|stephane dot dekeyzer at noemail dot com|Zm9yIHdyaXRpbmcgdGhlIGFycmF5IG9mIG1tdXN0YWZhIGJhY2sgdG8gYSB4bWwgZmlsZSwgdXNlIHRoaXMgY29kZToKCmZ1bmN0aW9uIHdyaXRlWG1sRmlsZSgkZmlsZU5hbWUsICRzdHJ1Y3QpewogICRmID0gZm9wZW4oJGZpbGVOYW1lLCAidyIpOwogIHdyaXRlWG1sVG9GaWxlKCRzdHJ1Y3QsICRmKTsKICBmY2xvc2UoJGYpOwp9CgpmdW5jdGlvbiB3cml0ZVhtbFRvRmlsZSgkZGF0YSwgJGYsICRuaXYgPSAwKXsKICBmb3JlYWNoKCRkYXRhIGFzICRuYW1lID0+ICRlbGVtKXsKICAgIGlmKGlzX2FycmF5KCRlbGVtKSl7CiAgICAgIGZ3cml0ZSgkZiwgc3RyX3JlcGVhdCgiICAiLCAkbml2KS4iPCIuJG5hbWUuIj4iLiJcbiIpOwogICAgICB3cml0ZVhtbFRvRmlsZSgkZWxlbSwgJGYsICRuaXYgKyAxKTsKICAgICAgZndyaXRlKCRmLCBzdHJfcmVwZWF0KCIgICIsICRuaXYpLiI8LyIuJG5hbWUuIj4iLiJcbiIpOwogICAgfQogICAgZWxzZXsKICAgICAgZndyaXRlKCRmLCBzdHJfcmVwZWF0KCIgICIsICRuaXYpLiI8Ii4kbmFtZS4iPiIuJGVsZW0uIjwvIi4kbmFtZS4iPiIuIlxuIik7CiAgICB9CiAgfQp9|| 38755|function.xml-parse-into-struct|0|1073348365|mmustafa at vsnl dot com|QSBzbWFsbCBhbmQgc2ltcGxlIHBocCBjb2RlIHRvIGNvbnZlcnQgdGhlIHJhdyBhcnJheSByZXR1cm5lZCBieSB4bWxfcGFyc2VfaW50b19zdHJ1Y3QgaW50byBhIHByb3BlciBkYXRhIHN0cnVjdHVyZSAuLgoKPD9waHAKJGZpbGUgPSAiZGF0YS54bWwiOwokeG1sX3BhcnNlciA9IHhtbF9wYXJzZXJfY3JlYXRlKCk7CgppZiAoISgkZnAgPSBmb3BlbigkZmlsZSwgInIiKSkpIHsKICAgIGRpZSgiY291bGQgbm90IG9wZW4gWE1MIGlucHV0Iik7Cn0KCiRkYXRhID0gZnJlYWQoJGZwLCBmaWxlc2l6ZSgkZmlsZSkpOwpmY2xvc2UoJGZwKTsKeG1sX3BhcnNlX2ludG9fc3RydWN0KCR4bWxfcGFyc2VyLCAkZGF0YSwgJHZhbHMsICRpbmRleCk7CnhtbF9wYXJzZXJfZnJlZSgkeG1sX3BhcnNlcik7CgokcGFyYW1zID0gYXJyYXkoKTsKJGxldmVsID0gYXJyYXkoKTsKZm9yZWFjaCAoJHZhbHMgYXMgJHhtbF9lbGVtKSB7CiAgaWYgKCR4bWxfZWxlbVsndHlwZSddID09ICdvcGVuJykgewogICAgaWYgKGFycmF5X2tleV9leGlzdHMoJ2F0dHJpYnV0ZXMnLCR4bWxfZWxlbSkpIHsKICAgICAgbGlzdCgkbGV2ZWxbJHhtbF9lbGVtWydsZXZlbCddXSwkZXh0cmEpID0gYXJyYXlfdmFsdWVzKCR4bWxfZWxlbVsnYXR0cmlidXRlcyddKTsKICAgIH0gZWxzZSB7CiAgICAgICRsZXZlbFskeG1sX2VsZW1bJ2xldmVsJ11dID0gJHhtbF9lbGVtWyd0YWcnXTsKICAgIH0KICB9CiAgaWYgKCR4bWxfZWxlbVsndHlwZSddID09ICdjb21wbGV0ZScpIHsKICAgICRzdGFydF9sZXZlbCA9IDE7CiAgICAkcGhwX3N0bXQgPSAnJHBhcmFtcyc7CiAgICB3aGlsZSgkc3RhcnRfbGV2ZWwgPCAkeG1sX2VsZW1bJ2xldmVsJ10pIHsKICAgICAgJHBocF9zdG10IC49ICdbJGxldmVsWycuJHN0YXJ0X2xldmVsLiddXSc7CiAgICAgICRzdGFydF9sZXZlbCsrOwogICAgfQogICAgJHBocF9zdG10IC49ICdbJHhtbF9lbGVtW1wndGFnXCddXSA9ICR4bWxfZWxlbVtcJ3ZhbHVlXCddOyc7CiAgICBldmFsKCRwaHBfc3RtdCk7CiAgfQp9CgplY2hvICI8cHJlPiI7CnByaW50X3IgKCRwYXJhbXMpOwplY2hvICI8L3ByZT4iOwo/PgoKQ29udmVydHMgYW4gWE1MIGRvY3VtZW50IGxpa2UgLi4KCjxjb3VudHJ5IGlkPSJaWiI+CjxuYW1lPk15IExhbmQ8L25hbWU+Cjxsb2NhdGlvbj4xNUU8L2xvY2F0aW9uPgo8YXJlYT40MDAwMDwvYXJlYT4KPHN0YXRlMT4KPG5hbWU+SGkgU3RhdGU8L25hbWU+CjxhcmVhPjEwMDA8L2FyZWE+Cjxwb3B1bGF0aW9uPjIwMDA8L3BvcHVsYXRpb24+CjxjaXR5MT4KPGxvY2F0aW9uPjEzRTwvbG9jYXRpb24+Cjxwb3B1bGF0aW9uPjUwMDwvcG9wdWxhdGlvbj4KPGFyZWE+NTAwPC9hcmVhPgo8L2NpdHkxPgo8Y2l0eTI+Cjxsb2NhdGlvbj4xM0U8L2xvY2F0aW9uPgo8cG9wdWxhdGlvbj41MDA8L3BvcHVsYXRpb24+CjxhcmVhPjUwMDA8L2FyZWE+CjwvY2l0eTI+Cjwvc3RhdGUxPgo8c3RhdGUyPgo8bmFtZT5Mb3cgU3RhdGU8L25hbWU+CjxhcmVhPjMwMDA8L2FyZWE+Cjxwb3B1bGF0aW9uPjIwMDAwPC9wb3B1bGF0aW9uPgo8Y2l0eTE+Cjxsb2NhdGlvbj4xNUU8L2xvY2F0aW9uPgo8cG9wdWxhdGlvbj41MDAwPC9wb3B1bGF0aW9uPgo8YXJlYT4xNTAwPC9hcmVhPgo8L2NpdHkxPgo8L3N0YXRlMj4KPC9jb3VudHJ5PgoKVG8gYSBwaHAgZGF0YXN0cnVjdHVyZSBsaWtlIC4uCgpBcnJheQooCiAgICBbWlpdID0+IEFycmF5CiAgICAgICAgKAogICAgICAgICAgICBbTkFNRV0gPT4gTXkgTGFuZAogICAgICAgICAgICBbTE9DQVRJT05dID0+IDE1RQogICAgICAgICAgICBbQVJFQV0gPT4gNDAwMDAKICAgICAgICAgICAgW1NUQVRFMV0gPT4gQXJyYXkKICAgICAgICAgICAgICAgICgKICAgICAgICAgICAgICAgICAgICBbTkFNRV0gPT4gSGkgU3RhdGUKICAgICAgICAgICAgICAgICAgICBbQVJFQV0gPT4gMTAwMAogICAgICAgICAgICAgICAgICAgIFtQT1BVTEFUSU9OXSA9PiAyMDAwCiAgICAgICAgICAgICAgICAgICAgW0NJVFkxXSA9PiBBcnJheQogICAgICAgICAgICAgICAgICAgICAgICAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbTE9DQVRJT05dID0+IDEzRQogICAgICAgICAgICAgICAgICAgICAgICAgICAgW1BPUFVMQVRJT05dID0+IDUwMAogICAgICAgICAgICAgICAgICAgICAgICAgICAgW0FSRUFdID0+IDUwMAogICAgICAgICAgICAgICAgICAgICAgICApCgogICAgICAgICAgICAgICAgICAgIFtDSVRZMl0gPT4gQXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgW0xPQ0FUSU9OXSA9PiAxM0UKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtQT1BVTEFUSU9OXSA9PiA1MDAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtBUkVBXSA9PiA1MDAwCiAgICAgICAgICAgICAgICAgICAgICAgICkKCiAgICAgICAgICAgICAgICApCgogICAgICAgICAgICBbU1RBVEUyXSA9PiBBcnJheQogICAgICAgICAgICAgICAgKAogICAgICAgICAgICAgICAgICAgIFtOQU1FXSA9PiBMb3cgU3RhdGUKICAgICAgICAgICAgICAgICAgICBbQVJFQV0gPT4gMzAwMAogICAgICAgICAgICAgICAgICAgIFtQT1BVTEFUSU9OXSA9PiAyMDAwMAogICAgICAgICAgICAgICAgICAgIFtDSVRZMV0gPT4gQXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgW0xPQ0FUSU9OXSA9PiAxNUUKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtQT1BVTEFUSU9OXSA9PiA1MDAwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbQVJFQV0gPT4gMTUwMAogICAgICAgICAgICAgICAgICAgICAgICApCgogICAgICAgICAgICAgICAgKQoKICAgICAgICApCgop|| 27015|function.xml-parse-into-struct|0|1037781212|bisqwit at iki dot fi dot not dot for dot ads dot invalid|SSBtYWRlIG15IG93biB4bWwydHJlZSgpLWZ1bmN0aW9uLgpUaGUgZGlmZmVyZW5jZSB0byB0aGUgcHJldmlvdXNseSBzdWdnZXN0ZWQgb25lcyBvbiB0aGlzIG1hbnVhbCBwYWdlIGlzIHRoYXQgdGhpcyBjcmVhdGVzIGEgdHJlZSB3aGVyZSB0aGUgdGFncyBhcmUga2V5cy4KCkV4YW1wbGUgaW5wdXQ6Cgo8dHJlZT4KIDxsZWFmIG5hbWU9ImdydXUiPiBwbD8/IDwvbGVhZj4KIDxhbmltYWwgdHlwZT0iY2F0IiAvPgo8L3RyZWU+CgpFeGFtcGxlIG91dHB1dDoKCkFycmF5CiggJ3RyZWUnID0+IEFycmF5CiAgICAgKCAwID0+IEFycmF5CiAgICAgICAgICAoICdjaGlsZHJlbicgPT4gQXJyYXkKICAgICAgICAgICAgICAgKCAnbGVhZicgPT4gQXJyYXkKICAgICAgICAgICAgICAgICAgICAoIDAgPT4gQXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICggJ2F0dHJzJyA9PiBBcnJheSgnbmFtZScgPT4gJ2dydXUnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3ZhbHVlcycgPT4gQXJyYXkoMCA9PiAnIHBsPz8gJykKICAgICAgICAgICAgICAgICAgICApICAgICksCiAgICAgICAgICAgICAgICAgJ2FuaW1hbCcgPT4gQXJyYXkKICAgICAgICAgICAgICAgICAgICAoIDAgPT4gQXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICggJ2F0dHJzJyA9PiBBcnJheSgndHlwZScgPT4gJ2NhdCcpCikgICAgKSAgICkgICAgKSAgICApICAgKQoKZnVuY3Rpb24geG1sMnRyZWUyKCRzdHJpbmcpCnsKICAkcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKICB4bWxfcGFyc2VyX3NldF9vcHRpb24oJHBhcnNlciwgWE1MX09QVElPTl9DQVNFX0ZPTERJTkcsIDApOwogIHhtbF9wYXJzZXJfc2V0X29wdGlvbigkcGFyc2VyLCBYTUxfT1BUSU9OX1NLSVBfV0hJVEUsIDEpOwogIHhtbF9wYXJzZV9pbnRvX3N0cnVjdCgkcGFyc2VyLCAkc3RyaW5nLCAkdmFscywgJGluZGV4KTsKICB4bWxfcGFyc2VyX2ZyZWUoJHBhcnNlcik7CiAgCiAgJHN0YWNrID0gYXJyYXkoIGFycmF5KCkgKTsKICAkc3RhY2t0b3AgPSAwOwogICRwYXJlbnQgPSBhcnJheSgpOwogIGZvcmVhY2goJHZhbHMgYXMgJHZhbCkKICB7CiAgICAkdHlwZSA9ICR2YWxbJ3R5cGUnXTsKICAgIGlmKCR0eXBlPT0nb3BlbicgfHwgJHR5cGU9PSdjb21wbGV0ZScpCiAgICB7CiAgICAgIC8vIG9wZW4gdGFnCiAgICAgICRzdGFja1skc3RhY2t0b3ArK10gPSAkdGFnaTsKICAgICAgJHRhZ2kgPSBhcnJheSgndGFnJyA9PiAkdmFsWyd0YWcnXSk7CgogICAgICBpZihpc3NldCgkdmFsWydhdHRyaWJ1dGVzJ10pKSAgJHRhZ2lbJ2F0dHJzJ10gPSAkdmFsWydhdHRyaWJ1dGVzJ107ICAgICAgCiAgICAgIGlmKGlzc2V0KCR2YWxbJ3ZhbHVlJ10pKQogICAgICAgICR0YWdpWyd2YWx1ZXMnXVtdID0gJHZhbFsndmFsdWUnXTsKICAgIH0KICAgIGlmKCR0eXBlPT0nY29tcGxldGUnIHx8ICR0eXBlPT0nY2xvc2UnKQogICAgewogICAgICAvLyBmaW5pc2ggdGFnCiAgICAgICR0YWdzW10gPSAkb2xkdGFnaSA9ICR0YWdpOyAKICAgICAgJHRhZ2kgPSAkc3RhY2tbLS0kc3RhY2t0b3BdOwogICAgICAkb2xkdGFnID0gJG9sZHRhZ2lbJ3RhZyddOyAgCiAgICAgIHVuc2V0KCRvbGR0YWdpWyd0YWcnXSk7CiAgICAgICR0YWdpWydjaGlsZHJlbiddWyRvbGR0YWddW10gPSAkb2xkdGFnaTsKICAgICAgJHBhcmVudCA9ICR0YWdpOwogICAgfQogICAgaWYoJHR5cGU9PSdjZGF0YScpCiAgICB7CiAgICAgICR0YWdpWyd2YWx1ZXMnXVtdID0gJHZhbFsndmFsdWUnXTsKICAgIH0KICB9CiAgcmV0dXJuICRwYXJlbnRbJ2NoaWxkcmVuJ107Cn0gICAgICAgIAoKUHM6IE5vdGUgdGhhdCB0aGUgeG1sIHBhcnNpbmcgZm9yIHNvbWUgcmVhc29uIGNob2tlcyBpZiB0aGUgdmFsdWVzIGNvbnRhaW4gPD4gKGV2ZW4gaW5zaWRlICIiKS4gWW91IG5lZWQgdG8gZXNjYXBlIHRoZW0gYXMgJmx0OyBhbmQgJmd0Oy4KU2FtZSBmb3IgJiAoZm9yIG9idmlvdXMgcmVhc29ucykuIEVzY2FwZSBpdCBhcyAmYW1wOy4KRm9yIGV4YW1wbGUgIiZuYnNwOyIgc2hvdWxkIGJlIHdyaXR0ZW4gYXMgIiZhbXA7bmJzcDsiLg==|| 24199|function.xml-parse-into-struct|0|1028856049||VGhpcyBpcyBiYXNlZCBvbiBhIGNvbW1lbnQgYWJvdmUgYnkgbWhAbWFpbmxhYi5kZS4gIFRoaXMgdmVyc2lvbiBtYWtlcyBtb3JlIHNlbnNlIHRvIG1lIGFuZCBJIGluY2x1ZGVkIGEgZmV3IGNvbW1lbnRzIHRoYXQgbWlnaHQgbWFrZSBpdCBtb3JlIHVzZWZ1bGwgZm9yIHNwZWNpZmljIHB1cnBvc2VzLgoKLy8gTG9vayB0aHJvdWdoICR2YWxzIGFuZCAkaW5kZXgsCi8vIGdlbmVyYXRlZCBieSBwYXJzZV94bWxfZGF0YSgpLAovLyBmb3IgJGxvY2F0aW9uLiAgJGxvY2F0aW9uIHJlc2VtYmxlcyBhIHVuaXggcGF0aC4KLy8gRS5nLiAibXkveG1sL3BhdGgvdG8vbXkvZGF0YSIuCi8vIE5vdGU6IFRoaXMgaXMgTk9UIGEgZnVsbC1mZWF0dXJlIHhtbCB1dGlsaXR5LgovLyBZb3VyIHBhdGggbXVzdCBiZSB1bmlxdWUgaW4gdGhlIHhtbCBkYXRhCi8vIGFuZCB0aGUgdGFncyBtdXN0IG5vdCBjb250YWluIHNsYXNoZXMuCi8vCi8vIHJldHVybnM6IGNkYXRhIGZyb20gbGFzdCBlbGVtZW50IG9mICRsb2NhdGlvbgovLyAgICAgICAgICBvciBOVUxMLgpmdW5jdGlvbiBnZXRfeG1sX3ZhbHVlcygkdmFscywgJGluZGV4LCAkbG9jYXRpb24pIHsKICAkbG9jYXRpb24gPSBleHBsb2RlKCcvJywgJGxvY2F0aW9uKTsKICAkbG9jYXRpb25fbGV2ZWwgPSBjb3VudCgkbG9jYXRpb24pOwogIGZvciAoJG49MDsgJG48JGxvY2F0aW9uX2xldmVsOyArKyRuKSB7CiAgICAkdmFsX2luZGV4ZXM9JGluZGV4WyRsb2NhdGlvblskbl1dOwogICAgJGdvb2Q9MDsKICAgIGZvciAoJGk9MDsgJGk8Y291bnQoJHZhbF9pbmRleGVzKTsgKyskaSkgewogICAgICAkdiA9ICR2YWxzWyR2YWxfaW5kZXhlc1skaV1dOwogICAgICAvLyBsZXZlbCBpcyAxIGJhc2VkLCBuIGlzIDAgYmFzZWQ6CiAgICAgIGlmICgkdlsnbGV2ZWwnXS0xID09ICRuKSB7CiAgICAgICAgaWYgKCR2Wyd0eXBlJ10gPT0gJ29wZW4nKSB7CiAgICAgICAgICAvLyBXZSBmb3VuZCBhbiBvcGVuIHRhZyBhdCB0aGUgY29ycmVjdCBsZXZlbC4KICAgICAgICAgICRnb29kPTE7CiAgICAgICAgICBicmVhazsgLy8gUmVtb3ZlIGJyZWFrIHRvIGF2b2lkICdvcGVuJyBoaWRpbmcKICAgICAgICAgICAgICAgICAvLyAnY29tcGxldGUnIGF0IGxhc3QgJG4uIChTcGVlZCBWcy4gUm9idXN0bmVzczoKICAgICAgICAgICAgICAgICAvLyBGb3Igbm93LCBJJ20gZ29pbmcgd2l0aCBzcGVlZCkuCiAgICAgICAgfQogICAgICAgIGlmICgkdlsndHlwZSddID09ICdjb21wbGV0ZScpIHsKICAgICAgICAgIC8vIFdlIGZvdW5kIGl0LCBhZnRlciBmaW5kaW5nIGFsbCB0aGUgcHJpb3IgZWxlbWVudHM6CiAgICAgICAgICAvLyBZb3UgbWF5IHdhbnQgdG8gY2hhbmdlIHRoaXMgdG8KICAgICAgICAgIC8vIHJldHVybiAkdgogICAgICAgICAgLy8gc28geW91IGNhbiBjYWxsICR2Wyd2YWx1ZSddIGFuZCAkdlsnYXR0cmlidXRlcyddCiAgICAgICAgICByZXR1cm4gJHZbJ3ZhbHVlJ107CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgICBpZiAoISRnb29kKSB7CiAgICAgIHJldHVybiBOVUxMOwogICAgfQogIH0KfQ==|| 23526|function.xml-parse-into-struct|100|1027190509|farinspace-at-hotmail-dot-com|V293LCB0b29rIGEgd2hpbGUgdG8gY29uc3VtZSBhbGwgb2YgdGhpcy4gSSBhbSBhIG5vb2JpZSBhdCBYTUwsIGluIGZhY3QgaSBqdXN0IHJlYWxseSBzdGFydGVkIHdvcmtpbmcgd2l0aCBpdCB0b2RheS4gSSB3ZW50IGFoZWFkIGFuZCBhZGRlZCB0byB0aGUgYWJvdmUgY29kZSBieSBnZGVtYXJ0aW5pQGJvbC5jb20uYnIuIEkgYWxzbyBhZGRlZCB0aGUgdXBkYXRlIGJ5IG55a0Bjb3doYW0ubmV0LgoKQWRkZWQgJ3ZhbHVlJyA9PiAkdmFsc1skaV1bJ3ZhbHVlJ10gdG8gdGhlIG9wZW4gY2FzZSwgYXMgc29tZSBub2RlcyBoYXZlIGJvdGggY2RhdGEgYXMgd2VsbCBhcyBhIGNoaWxkcmVuIG5vZGUuIEluIHByZXZpb3VzIHZlcnNpb25zIG9mIHRoZSBmdW5jdGlvbnMgdGhlIGNkYXRhIG9mIGEgbm9kZShhKSB0aGF0IGFsc28gaGFkIGNoaWxkcmVuIHdvdWxkIGdldCBzdG9yZWQgaW4gdGhlIGNoaWxkcmVuJ3MgYXJyYXkgb2YgdGhlIHBhcmVudCBub2RlKGEpLiBOb3cgb25seSBjaGlsZHJlbiB2YWx1ZXMgYXJlIGluIHRoZSBjaGlsZHJlbiBhcnJheSBhbmQgdGhlIGNkYXRhIGlzIGluIHRoZSB2YWx1ZSBrZXkgb2YgdGhlIHBhcmVudCBub2RlKGEpLgoKQWRkZWQgJ3ZhbHVlJyA9PiAkdmFsc1skaV1bJ3ZhbHVlJ10gdG8gdHJlZSBhcnJheSBhcyB0aGUgdmFscyBhcnJheSBwcm9kdWNlZCBieSBQSFAgaW5jbHVkZXMgYSB2YWx1ZSB0byB0aGUgdG9wIG1vc3Qgbm9kZSBpZiBubyBjaGlsZHJlbiBleGlzdCAoZm9yIGNvbXBsZXRlbmVzcykuCgpBbHNvLCB1c2luZyB4bWxfcGFyc2VyX3NldF9vcHRpb24oJHBhcnNlciwgWE1MX09QVElPTl9TS0lQX1dISVRFLDEpIHdpbGwgc3RyaXAgYWxsIHdoaXRlIHNwYWNlIGZyb20gYm90aCBhcm91bmQgdGhlIFhNTCB0YWdzIGFzIHdlbGwgYXMgaW5zaWRlIHRoZSBjZGF0YS4gSSBhZGRlZCBhIHBpZWNlIG9mIGNvZGUgYnkgd2FsZG9Ad2gtZS5jb20gdG8gdGFrZSBjYXJlIG9mIHRoaXMuIEFsbCBTUEFDRSBjaGFyYWN0ZXJzIGFyZSBub3cgb25seSBzdHJpcHBlZCBmcm9tIGFyb3VuZCB0aGUgWE1MIHRhZ3MgYW5kIGNkYXRhIHNwYWNpbmcgaXMgcmV0YWluZWQuCgpDT0RFOgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCmZ1bmN0aW9uIEdldENoaWxkcmVuKCR2YWxzLCAmJGkpIHsKCgkkY2hpbGRyZW4gPSBhcnJheSgpOwoKCXdoaWxlICgrKyRpIDwgc2l6ZW9mKCR2YWxzKSkgewoKCQkvLyBjb21wYWlyIHR5cGUKCQlzd2l0Y2ggKCR2YWxzWyRpXVsndHlwZSddKSB7CgoJCQljYXNlICdjZGF0YSc6CgkJCQkkY2hpbGRyZW5bXSA9ICR2YWxzWyRpXVsndmFsdWUnXTsKCQkJCWJyZWFrOwoJCQljYXNlICdjb21wbGV0ZSc6CgkJCQkkY2hpbGRyZW5bXSA9IGFycmF5KAoJCQkJCSd0YWcnID0+ICR2YWxzWyRpXVsndGFnJ10sIAoJCQkJCSdhdHRyaWJ1dGVzJyA9PiAkdmFsc1skaV1bJ2F0dHJpYnV0ZXMnXSwgCgkJCQkJJ3ZhbHVlJyA9PiAkdmFsc1skaV1bJ3ZhbHVlJ10KCQkJCSk7CgkJCQlicmVhazsKCQkJY2FzZSAnb3Blbic6CgkJCQkkY2hpbGRyZW5bXSA9IGFycmF5KAoJCQkJCSd0YWcnID0+ICR2YWxzWyRpXVsndGFnJ10sIAoJCQkJCSdhdHRyaWJ1dGVzJyA9PiAkdmFsc1skaV1bJ2F0dHJpYnV0ZXMnXSwgCgkJCQkJJ3ZhbHVlJyA9PiAkdmFsc1skaV1bJ3ZhbHVlJ10sIAoJCQkJCSdjaGlsZHJlbicgPT4gR2V0Q2hpbGRyZW4oJHZhbHMsICRpKQoJCQkJKTsJCQoJCQkJYnJlYWs7CgkJCWNhc2UgJ2Nsb3NlJzoKCQkJCXJldHVybiAkY2hpbGRyZW47CgkJfQoJfQp9CgpmdW5jdGlvbiBHZXRYTUxUcmVlKCRmaWxlKSB7CgoJJGRhdGEgPSBpbXBsb2RlKCcnLCBmaWxlKCRmaWxlKSk7CgoJLy8gYnk6IHdhbGRvQHdoLWUuY29tIC0gdHJpbSBzcGFjZSBhcm91bmQgdGFncyBub3Qgd2l0aGluCgkkZGF0YSA9IGVyZWdpX3JlcGxhY2UoIj4iLiJbWzpzcGFjZTpdXSsiLiI8IiwiPjwiLCRkYXRhKTsKCgkvLyBYTUwgZnVuY3Rpb25zCgkkcCA9IHhtbF9wYXJzZXJfY3JlYXRlKCk7CgoJLy8gYnk6IGFub255QG1vdXMuY29tIC0gbWVldHMgWE1MIDEuMCBzcGVjaWZpY2F0aW9uCgl4bWxfcGFyc2VyX3NldF9vcHRpb24oJHAsIFhNTF9PUFRJT05fQ0FTRV9GT0xESU5HLCAwKTsKCXhtbF9wYXJzZV9pbnRvX3N0cnVjdCgkcCwgJGRhdGEsICYkdmFscywgJiRpbmRleCk7Cgl4bWxfcGFyc2VyX2ZyZWUoJHApOwoKCSRpID0gMDsKCSR0cmVlID0gYXJyYXkoKTsKCSR0cmVlW10gPSBhcnJheSgKCQkndGFnJyA9PiAkdmFsc1skaV1bJ3RhZyddLCAKCQknYXR0cmlidXRlcycgPT4gJHZhbHNbJGldWydhdHRyaWJ1dGVzJ10sIAoJCSd2YWx1ZScgPT4gJHZhbHNbJGldWyd2YWx1ZSddLCAKCQknY2hpbGRyZW4nID0+IEdldENoaWxkcmVuKCR2YWxzLCAkaSkKCSk7CgoJcmV0dXJuICR0cmVlOwp9CgoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKio=|1|0 20412|function.xml-parse-into-struct|0|1017804728|dave at ovumdesign dot com|SGVyZSBpcyBhbm90aGVyIHZhcmlhdGlvbiBvbiBnZGVtYXJ0aW5pQGJvbC5jb20uYnIncyBuaWNlIHRyZWUgYWxnb3JpdGhtLiBJIGhhdmUgaW5jbHVkZWQgbnlrQGNvd2hhbS5uZXQncyAiY2RhdGEiIHN1Z2dlc3Rpb24uIEkgbWFkZSBhIGZldyBjaGFuZ2VzIHRvIHN1cHByZXNzIHVuaXRpYWxpemVkIHZhcmlhYmxlIHdhcm5pbmdzIHdpdGggZXJyb3JfcmVwb3J0aW5nKEVfQUxMKSwgYW5kIG1hZGUgYSBmZXcgc3R5bGlzdGljIGNoYW5nZXMuCgpUaGVyZSBhcmUgdHdvIGZ1bmN0aW9uYWwgbW9kaWZpY2F0aW9ucyBhcyB3ZWxsLiBUaGUgZmlyc3QgaXMgdGhlIGFkZGVkIG9wdGlvbiB0byBleHBhdCB0byB0dXJuIG9mZiAiY2FzZSBmb2xkaW5nIiwgc2luY2UgWE1MIGlzIHRlY2huaWNhbGx5IGEgY2FzZS1zZW5zaXRpdmUgbGFuZ3VhZ2UuIFRoZSBzZWNvbmQgaXMgdGhlIHJldHVybmVkIHRyZWUgLSBpbnN0ZWFkIG9mIHJldHVybmluZyBhIHNpbmdsZS1lbGVtZW50IGxpc3QgKGFuIGFycmF5IHdpdGggaW5kZXggMCBwb2ludGluZyB0byB0aGUgdG9wIG5vZGUpIGxpa2UgdGhlIG9yaWdpbmFsIGFsZ29yaXRobSwgaXQgcmV0dXJucyB0aGUgdG9wIG5vZGUgaXRzZWxmLiBUaGlzIHNhdmVzIHlvdSBhbiB1bm5lY2Vzc2FyeSBsZXZlbCBvZiBpbmRpcmVjdGlvbi4KCmZ1bmN0aW9uIHhtbF9nZXRfY2hpbGRyZW4oJHZhbHMsICYkaSkgewogICAgJGNoaWxkcmVuID0gYXJyYXkoKTsKICAgIGlmIChpc3NldCgkdmFsc1skaV1bJ3ZhbHVlJ10pKSAkY2hpbGRyZW5bXSA9ICR2YWxzWyRpXVsndmFsdWUnXTsKCiAgICB3aGlsZSAoKyskaSA8IGNvdW50KCR2YWxzKSkgewogICAgICAgIHN3aXRjaCAoJHZhbHNbJGldWyd0eXBlJ10pIHsKICAgICAgICBjYXNlICdjZGF0YSc6CiAgICAgICAgICAgICRjaGlsZHJlbltdID0gJHZhbHNbJGldWyd2YWx1ZSddOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnY29tcGxldGUnOgogICAgICAgICAgICAkY2hpbGRyZW5bXSA9IGFycmF5KAogICAgICAgICAgICAgICAgJ3RhZycgICAgICAgID0+ICR2YWxzWyRpXVsndGFnJ10sCiAgICAgICAgICAgICAgICAnYXR0cmlidXRlcycgPT4gaXNzZXQoJHZhbHNbJGldWydhdHRyaWJ1dGVzJ10pPwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR2YWxzWyRpXVsnYXR0cmlidXRlcyddIDogbnVsbCwKICAgICAgICAgICAgICAgICd2YWx1ZScgICAgICA9PiAkdmFsc1skaV1bJ3ZhbHVlJ10sCiAgICAgICAgICAgICk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdvcGVuJzoKICAgICAgICAgICAgJGNoaWxkcmVuW10gPSBhcnJheSgKICAgICAgICAgICAgICAgICd0YWcnICAgICAgICA9PiAkdmFsc1skaV1bJ3RhZyddLAogICAgICAgICAgICAgICAgJ2F0dHJpYnV0ZXMnID0+IGlzc2V0KCR2YWxzWyRpXVsnYXR0cmlidXRlcyddKT8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdmFsc1skaV1bJ2F0dHJpYnV0ZXMnXSA6IG51bGwsCiAgICAgICAgICAgICAgICAnY2hpbGRyZW4nICAgPT4geG1sX2dldF9jaGlsZHJlbigkdmFscywgJGkpLAogICAgICAgICAgICApOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnY2xvc2UnOgogICAgICAgICAgICByZXR1cm4gJGNoaWxkcmVuOwogICAgICAgIH0KICAgIH0KfQoKZnVuY3Rpb24geG1sX2dldF90cmVlKCRmaWxlKSB7CiAgICAkZGF0YSA9IGpvaW4oJycsIGZpbGUoJGZpbGUpKTsKCiAgICAkcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKICAgIHhtbF9wYXJzZXJfc2V0X29wdGlvbigkcGFyc2VyLCBYTUxfT1BUSU9OX0NBU0VfRk9MRElORywgMCk7CiAgICB4bWxfcGFyc2VyX3NldF9vcHRpb24oJHBhcnNlciwgWE1MX09QVElPTl9TS0lQX1dISVRFLCAgIDEpOwogICAgeG1sX3BhcnNlX2ludG9fc3RydWN0KCRwYXJzZXIsICRkYXRhLCAkdmFscywgJGluZGV4KTsKICAgIHhtbF9wYXJzZXJfZnJlZSgkcGFyc2VyKTsKCiAgICByZXR1cm4gYXJyYXkoCiAgICAgICAgJ3RhZycgICAgICAgID0+ICR2YWxzWzBdWyd0YWcnXSwKICAgICAgICAnYXR0cmlidXRlcycgPT4gaXNzZXQoJHZhbHNbMF1bJ2F0dHJpYnV0ZXMnXSk/CiAgICAgICAgICAgICAgICAgICAgICAgICR2YWxzWzBdWydhdHRyaWJ1dGVzJ10gOiBudWxsLAogICAgICAgICdjaGlsZHJlbicgICA9PiB4bWxfZ2V0X2NoaWxkcmVuKCR2YWxzLCAkaSA9IDApLAogICAgKTsKfQoKVGhpcyBmdW5jdGlvbiB0YWtlcyBhIHRyZWUgcmV0dXJuZWQgYnkgeG1sX2dldF90cmVlKCkgYW5kIHNpbXBsaWZpZXMgaXQgc2ltaWxhcmx5IHRvIHZvbmNrZW5AbWFpbGFuZG5ld3MuY29tIGFuZCBva25hcHBAc29seS5kZSdzIHN1Z2dlc3Rpb25zLiBJdCBmaW5kcyBhbnkgbm9kZXMgdGhhdCBleHBhdCBjb25zaWRlcmVkICJjb21wbGV0ZSIgKGNoaWxkbGVzcykgYW5kIGNvbnRhaW4gbm8gYXR0cmlidXRlcywgYW5kIGl0IG1vdmVzIHRoZSB0YWcgbmFtZSAoYXMgdGhlIGtleSkgYW5kIHZhbHVlIGludG8gYW4gZWxlbWVudCBpbiB0aGUgcGFyZW50IG5vZGUncyAidmFsdWVzIiBhcnJheS4KCkZvciBleGFtcGxlOiAKJHRyZWUgPSB4bWxfZ2V0X3RyZWUoJ21vbGRiLnhtbCcpOyAgIAokdHJlZSA9IHhtbF9jb25kZW5zZV90cmVlKCR0cmVlKTsgCmVjaG8gJHRyZWVbJ2NoaWxkcmVuJ11bMV1bJ3ZhbHVlcyddWyduYW1lJ107CgpPdXRwdXRzOgpMeXNpbmUKCmZ1bmN0aW9uIHhtbF9jb25kZW5zZV90cmVlKCR0cmVlKSB7CiAgICBmb3JlYWNoICgkdHJlZVsnY2hpbGRyZW4nXSBhcyAkaW5kZXggPT4gJG5vZGUpIHsKICAgICAgICBpZiAoaXNzZXQoJG5vZGVbJ2NoaWxkcmVuJ10pKSB7CiAgICAgICAgICAgICR0cmVlWydjaGlsZHJlbiddWyRpbmRleF0gPSB4bWxfY29uZGVuc2VfdHJlZSgkbm9kZSk7CgogICAgICAgIH0gZWxzZWlmIChpc3NldCgkbm9kZVsndmFsdWUnXSkgYW5kICEkbm9kZVsnYXR0cmlidXRlcyddKSB7CiAgICAgICAgICAgICR0cmVlWyd2YWx1ZXMnXVskbm9kZVsndGFnJ11dID0gJG5vZGVbJ3ZhbHVlJ107CiAgICAgICAgICAgIHVuc2V0KCR0cmVlWydjaGlsZHJlbiddWyRpbmRleF0pOwogICAgICAgIH0KICAgIH0KICAgICAKICAgIGlmICghJHRyZWVbJ2NoaWxkcmVuJ10pIHVuc2V0KCR0cmVlWydjaGlsZHJlbiddKTsKICAgIHJldHVybiAkdHJlZTsKfQoKRW5qb3ksCkRhdmU=||