1688054432
waR3U4bTeM%3Aa022dc01ac5d0d55b650aa71f8b18a6b-cd73d199f4cee882872061cadf658406
s:49816:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MzI6IkZ1bGwgcmVwb3J0IGZvciBQSFBfQ29kZVNuaWZmZXIuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjM6e2k6MDtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xBdXRob3IiOjQ6e3M6NzoiACoAbmFtZSI7czo2OiJhdXRob3IiO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xBdXRob3IAYXV0aG9yTmFtZSI7czoxMzoiR3JlZyBTaGVyd29vZCI7czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEF1dGhvcgBhdXRob3JFbWFpbCI7czoxOToiZ3NoZXJ3b29kQHNxdWl6Lm5ldCI7czoxNDoiACoAZGVzY3JpcHRpb24iO047fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xHZW5lcmljIjoyOntzOjc6IgAqAG5hbWUiO3M6OToiY29weXJpZ2h0IjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo0NDoiMjAwNi0yMDE1IFNxdWl6IFB0eSBMdGQgKEFCTiA3NyAwODQgNjcwIDYwMCkiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjI7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjc6ImxpY2Vuc2UiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjgwOiJodHRwczovL2dpdGh1Yi5jb20vc3F1aXpsYWJzL1BIUF9Db2RlU25pZmZlci9ibG9iL21hc3Rlci9saWNlbmNlLnR4dCBCU0QgTGljZW5jZSI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaGFzaCI7czozMjoiY2Q3M2QxOTlmNGNlZTg4Mjg3MjA2MWNhZGY2NTg0MDYiO3M6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbmFtZSI7czo4OiJDb2RlLnBocCI7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBwYXRoIjtzOjUzOiJ2ZW5kb3Ivc3F1aXpsYWJzL3BocF9jb2Rlc25pZmZlci9zcmMvUmVwb3J0cy9Db2RlLnBocCI7czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBzb3VyY2UiO3M6MTI5OTI6Ijw/cGhwCi8qKgogKiBGdWxsIHJlcG9ydCBmb3IgUEhQX0NvZGVTbmlmZmVyLgogKgogKiBAYXV0aG9yICAgIEdyZWcgU2hlcndvb2QgPGdzaGVyd29vZEBzcXVpei5uZXQ+CiAqIEBjb3B5cmlnaHQgMjAwNi0yMDE1IFNxdWl6IFB0eSBMdGQgKEFCTiA3NyAwODQgNjcwIDYwMCkKICogQGxpY2Vuc2UgICBodHRwczovL2dpdGh1Yi5jb20vc3F1aXpsYWJzL1BIUF9Db2RlU25pZmZlci9ibG9iL21hc3Rlci9saWNlbmNlLnR4dCBCU0QgTGljZW5jZQogKi8KCm5hbWVzcGFjZSBQSFBfQ29kZVNuaWZmZXJcUmVwb3J0czsKCnVzZSBQSFBfQ29kZVNuaWZmZXJcRmlsZXNcRmlsZTsKdXNlIFBIUF9Db2RlU25pZmZlclxVdGlsOwoKY2xhc3MgQ29kZSBpbXBsZW1lbnRzIFJlcG9ydAp7CgoKICAgIC8qKgogICAgICogR2VuZXJhdGUgYSBwYXJ0aWFsIHJlcG9ydCBmb3IgYSBzaW5nbGUgcHJvY2Vzc2VkIGZpbGUuCiAgICAgKgogICAgICogRnVuY3Rpb24gc2hvdWxkIHJldHVybiBUUlVFIGlmIGl0IHByaW50ZWQgb3Igc3RvcmVkIGRhdGEgYWJvdXQgdGhlIGZpbGUKICAgICAqIGFuZCBGQUxTRSBpZiBpdCBpZ25vcmVkIHRoZSBmaWxlLiBSZXR1cm5pbmcgVFJVRSBpbmRpY2F0ZXMgdGhhdCB0aGUgZmlsZSBhbmQKICAgICAqIGl0cyBkYXRhIHNob3VsZCBiZSBjb3VudGVkIGluIHRoZSBncmFuZCB0b3RhbHMuCiAgICAgKgogICAgICogQHBhcmFtIGFycmF5ICAgICAgICAgICAgICAgICAkcmVwb3J0ICAgICAgUHJlcGFyZWQgcmVwb3J0IGRhdGEuCiAgICAgKiBAcGFyYW0gXFBIUF9Db2RlU25pZmZlclxGaWxlICRwaHBjc0ZpbGUgICBUaGUgZmlsZSBiZWluZyByZXBvcnRlZCBvbi4KICAgICAqIEBwYXJhbSBib29sICAgICAgICAgICAgICAgICAgJHNob3dTb3VyY2VzIFNob3cgc291cmNlcz8KICAgICAqIEBwYXJhbSBpbnQgICAgICAgICAgICAgICAgICAgJHdpZHRoICAgICAgIE1heGltdW0gYWxsb3dlZCBsaW5lIHdpZHRoLgogICAgICoKICAgICAqIEByZXR1cm4gYm9vbAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2VuZXJhdGVGaWxlUmVwb3J0KCRyZXBvcnQsIEZpbGUgJHBocGNzRmlsZSwgJHNob3dTb3VyY2VzPWZhbHNlLCAkd2lkdGg9ODApCiAgICB7CiAgICAgICAgaWYgKCRyZXBvcnRbJ2Vycm9ycyddID09PSAwICYmICRyZXBvcnRbJ3dhcm5pbmdzJ10gPT09IDApIHsKICAgICAgICAgICAgLy8gTm90aGluZyB0byBwcmludC4KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KCiAgICAgICAgLy8gSG93IG1hbnkgbGluZXMgdG8gc2hvdyBhYm91dCBhbmQgYmVsb3cgdGhlIGVycm9yIGxpbmUuCiAgICAgICAgJHN1cnJvdW5kaW5nTGluZXMgPSAyOwoKICAgICAgICAkZmlsZSAgID0gJHJlcG9ydFsnZmlsZW5hbWUnXTsKICAgICAgICAkdG9rZW5zID0gJHBocGNzRmlsZS0+Z2V0VG9rZW5zKCk7CiAgICAgICAgaWYgKGVtcHR5KCR0b2tlbnMpID09PSB0cnVlKSB7CiAgICAgICAgICAgIGlmIChQSFBfQ09ERVNOSUZGRVJfVkVSQk9TSVRZID09PSAxKSB7CiAgICAgICAgICAgICAgICAkc3RhcnRUaW1lID0gbWljcm90aW1lKHRydWUpOwogICAgICAgICAgICAgICAgZWNobyAnQ09ERSByZXBvcnQgaXMgcGFyc2luZyAnLmJhc2VuYW1lKCRmaWxlKS4nICc7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoUEhQX0NPREVTTklGRkVSX1ZFUkJPU0lUWSA+IDEpIHsKICAgICAgICAgICAgICAgIGVjaG8gIkNPREUgcmVwb3J0IGlzIGZvcmNpbmcgcGFyc2Ugb2YgJGZpbGUiLlBIUF9FT0w7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAkcGhwY3NGaWxlLT5wYXJzZSgpOwogICAgICAgICAgICB9IGNhdGNoIChcRXhjZXB0aW9uICRlKSB7CiAgICAgICAgICAgICAgICAvLyBUaGlzIGlzIGEgc2Vjb25kIHBhcnNlLCBzbyBpZ25vcmUgZXhjZXB0aW9ucy4KICAgICAgICAgICAgICAgIC8vIFRoZXkgd291bGQgaGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSBmaWxlJ3MgZXJyb3IgbGlzdCBhbHJlYWR5LgogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoUEhQX0NPREVTTklGRkVSX1ZFUkJPU0lUWSA9PT0gMSkgewogICAgICAgICAgICAgICAgJHRpbWVUYWtlbiA9ICgobWljcm90aW1lKHRydWUpIC0gJHN0YXJ0VGltZSkgKiAxMDAwKTsKICAgICAgICAgICAgICAgIGlmICgkdGltZVRha2VuIDwgMTAwMCkgewogICAgICAgICAgICAgICAgICAgICR0aW1lVGFrZW4gPSByb3VuZCgkdGltZVRha2VuKTsKICAgICAgICAgICAgICAgICAgICBlY2hvICJET05FIGluIHskdGltZVRha2VufW1zIjsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJHRpbWVUYWtlbiA9IHJvdW5kKCgkdGltZVRha2VuIC8gMTAwMCksIDIpOwogICAgICAgICAgICAgICAgICAgIGVjaG8gIkRPTkUgaW4gJHRpbWVUYWtlbiBzZWNzIjsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBlY2hvIFBIUF9FT0w7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICR0b2tlbnMgPSAkcGhwY3NGaWxlLT5nZXRUb2tlbnMoKTsKICAgICAgICB9Ly9lbmQgaWYKCiAgICAgICAgLy8gQ3JlYXRlIGFuIGFycmF5IHRoYXQgbWFwcyBsaW5lcyB0byB0aGUgZmlyc3QgdG9rZW4gb24gdGhlIGxpbmUuCiAgICAgICAgJGxpbmVUb2tlbnMgPSBbXTsKICAgICAgICAkbGFzdExpbmUgICA9IDA7CiAgICAgICAgJHN0YWNrUHRyICAgPSAwOwogICAgICAgIGZvcmVhY2ggKCR0b2tlbnMgYXMgJHN0YWNrUHRyID0+ICR0b2tlbikgewogICAgICAgICAgICBpZiAoJHRva2VuWydsaW5lJ10gIT09ICRsYXN0TGluZSkgewogICAgICAgICAgICAgICAgaWYgKCRsYXN0TGluZSA+IDApIHsKICAgICAgICAgICAgICAgICAgICAkbGluZVRva2Vuc1skbGFzdExpbmVdWydlbmQnXSA9ICgkc3RhY2tQdHIgLSAxKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAkbGFzdExpbmUrKzsKICAgICAgICAgICAgICAgICRsaW5lVG9rZW5zWyRsYXN0TGluZV0gPSBbCiAgICAgICAgICAgICAgICAgICAgJ3N0YXJ0JyA9PiAkc3RhY2tQdHIsCiAgICAgICAgICAgICAgICAgICAgJ2VuZCcgICA9PiBudWxsLAogICAgICAgICAgICAgICAgXTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy8gTWFrZSBzdXJlIHRoZSBsYXN0IHRva2VuIGluIHRoZSBmaWxlIHNpdHMgb24gYW4gaW1hZ2luYXJ5CiAgICAgICAgLy8gbGFzdCBsaW5lIHNvIGl0IGlzIGVhc2llciB0byBnZW5lcmF0ZSBjb2RlIHNuaXBwZXRzIGF0IHRoZQogICAgICAgIC8vIGVuZCBvZiB0aGUgZmlsZS4KICAgICAgICAkbGluZVRva2Vuc1skbGFzdExpbmVdWydlbmQnXSA9ICRzdGFja1B0cjsKCiAgICAgICAgLy8gRGV0ZXJtaW5lIHRoZSBsb25nZXN0IGNvZGUgbGluZSB3ZSB3aWxsIGJlIHNob3dpbmcuCiAgICAgICAgJG1heFNuaXBwZXRMZW5ndGggPSAwOwogICAgICAgICRlb2xMZW4gICAgICAgICAgID0gc3RybGVuKCRwaHBjc0ZpbGUtPmVvbENoYXIpOwogICAgICAgIGZvcmVhY2ggKCRyZXBvcnRbJ21lc3NhZ2VzJ10gYXMgJGxpbmUgPT4gJGxpbmVFcnJvcnMpIHsKICAgICAgICAgICAgJHN0YXJ0TGluZSA9IG1heCgoJGxpbmUgLSAkc3Vycm91bmRpbmdMaW5lcyksIDEpOwogICAgICAgICAgICAkZW5kTGluZSAgID0gbWluKCgkbGluZSArICRzdXJyb3VuZGluZ0xpbmVzKSwgJGxhc3RMaW5lKTsKCiAgICAgICAgICAgICRtYXhMaW5lTnVtTGVuZ3RoID0gc3RybGVuKCRlbmRMaW5lKTsKCiAgICAgICAgICAgIGZvciAoJGkgPSAkc3RhcnRMaW5lOyAkaSA8PSAkZW5kTGluZTsgJGkrKykgewogICAgICAgICAgICAgICAgaWYgKCRpID09PSAxKSB7CiAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJGxpbmVMZW5ndGggICAgICAgPSAoJHRva2Vuc1soJGxpbmVUb2tlbnNbJGldWydzdGFydCddIC0gMSldWydjb2x1bW4nXSArICR0b2tlbnNbKCRsaW5lVG9rZW5zWyRpXVsnc3RhcnQnXSAtIDEpXVsnbGVuZ3RoJ10gLSAkZW9sTGVuKTsKICAgICAgICAgICAgICAgICRtYXhTbmlwcGV0TGVuZ3RoID0gbWF4KCRsaW5lTGVuZ3RoLCAkbWF4U25pcHBldExlbmd0aCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICRtYXhTbmlwcGV0TGVuZ3RoICs9ICgkbWF4TGluZU51bUxlbmd0aCArIDgpOwoKICAgICAgICAvLyBEZXRlcm1pbmUgdGhlIGxvbmdlc3QgZXJyb3IgbWVzc2FnZSB3ZSB3aWxsIGJlIHNob3dpbmcuCiAgICAgICAgJG1heEVycm9yTGVuZ3RoID0gMDsKICAgICAgICBmb3JlYWNoICgkcmVwb3J0WydtZXNzYWdlcyddIGFzICRsaW5lID0+ICRsaW5lRXJyb3JzKSB7CiAgICAgICAgICAgIGZvcmVhY2ggKCRsaW5lRXJyb3JzIGFzICRjb2x1bW4gPT4gJGNvbEVycm9ycykgewogICAgICAgICAgICAgICAgZm9yZWFjaCAoJGNvbEVycm9ycyBhcyAkZXJyb3IpIHsKICAgICAgICAgICAgICAgICAgICAkbGVuZ3RoID0gc3RybGVuKCRlcnJvclsnbWVzc2FnZSddKTsKICAgICAgICAgICAgICAgICAgICBpZiAoJHNob3dTb3VyY2VzID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRsZW5ndGggKz0gKHN0cmxlbigkZXJyb3JbJ3NvdXJjZSddKSArIDMpOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgJG1heEVycm9yTGVuZ3RoID0gbWF4KCRtYXhFcnJvckxlbmd0aCwgKCRsZW5ndGggKyAxKSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIC8vIFRoZSBwYWRkaW5nIHRoYXQgYWxsIGxpbmVzIHdpbGwgcmVxdWlyZSB0aGF0IGFyZSBwcmludGluZyBhbiBlcnJvciBtZXNzYWdlIG92ZXJmbG93LgogICAgICAgIGlmICgkcmVwb3J0Wyd3YXJuaW5ncyddID4gMCkgewogICAgICAgICAgICAkdHlwZUxlbmd0aCA9IDc7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgJHR5cGVMZW5ndGggPSA1OwogICAgICAgIH0KCiAgICAgICAgJGVycm9yUGFkZGluZyAgPSBzdHJfcmVwZWF0KCcgJywgKCRtYXhMaW5lTnVtTGVuZ3RoICsgNykpOwogICAgICAgICRlcnJvclBhZGRpbmcgLj0gc3RyX3JlcGVhdCgnICcsICR0eXBlTGVuZ3RoKTsKICAgICAgICAkZXJyb3JQYWRkaW5nIC49ICcgJzsKICAgICAgICBpZiAoJHJlcG9ydFsnZml4YWJsZSddID4gMCkgewogICAgICAgICAgICAkZXJyb3JQYWRkaW5nIC49ICcgICAgJzsKICAgICAgICB9CgogICAgICAgICRlcnJvclBhZGRpbmdMZW5ndGggPSBzdHJsZW4oJGVycm9yUGFkZGluZyk7CgogICAgICAgIC8vIFRoZSBtYXhpbXVtIGFtb3VudCBvZiBzcGFjZSBhbiBlcnJvciBtZXNzYWdlIGNhbiB1c2UuCiAgICAgICAgJG1heEVycm9yU3BhY2UgPSAoJHdpZHRoIC0gJGVycm9yUGFkZGluZ0xlbmd0aCk7CiAgICAgICAgaWYgKCRzaG93U291cmNlcyA9PT0gdHJ1ZSkgewogICAgICAgICAgICAvLyBBY2NvdW50IGZvciB0aGUgY2hhcnMgdXNlZCB0byBwcmludCBjb2xvcnMuCiAgICAgICAgICAgICRtYXhFcnJvclNwYWNlICs9IDg7CiAgICAgICAgfQoKICAgICAgICAvLyBGaWd1cmUgb3V0IHRoZSBtYXggcmVwb3J0IHdpZHRoIHdlIG5lZWQgYW5kIGNhbiB1c2UuCiAgICAgICAgJGZpbGVMZW5ndGggPSBzdHJsZW4oJGZpbGUpOwogICAgICAgICRtYXhXaWR0aCAgID0gbWF4KCgkZmlsZUxlbmd0aCArIDYpLCAoJG1heEVycm9yTGVuZ3RoICsgJGVycm9yUGFkZGluZ0xlbmd0aCkpOwogICAgICAgICR3aWR0aCAgICAgID0gbWF4KG1pbigkd2lkdGgsICRtYXhXaWR0aCksICRtYXhTbmlwcGV0TGVuZ3RoKTsKICAgICAgICBpZiAoJHdpZHRoIDwgNzApIHsKICAgICAgICAgICAgJHdpZHRoID0gNzA7CiAgICAgICAgfQoKICAgICAgICAvLyBQcmludCB0aGUgZmlsZSBoZWFkZXIuCiAgICAgICAgZWNobyBQSFBfRU9MLiJcMDMzWzFtRklMRTogIjsKICAgICAgICBpZiAoJGZpbGVMZW5ndGggPD0gKCR3aWR0aCAtIDYpKSB7CiAgICAgICAgICAgIGVjaG8gJGZpbGU7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZWNobyAnLi4uJy5zdWJzdHIoJGZpbGUsICgkZmlsZUxlbmd0aCAtICgkd2lkdGggLSA2KSkpOwogICAgICAgIH0KCiAgICAgICAgZWNobyAiXDAzM1swbSIuUEhQX0VPTDsKICAgICAgICBlY2hvIHN0cl9yZXBlYXQoJy0nLCAkd2lkdGgpLlBIUF9FT0w7CgogICAgICAgIGVjaG8gIlwwMzNbMW0iLidGT1VORCAnLiRyZXBvcnRbJ2Vycm9ycyddLicgRVJST1InOwogICAgICAgIGlmICgkcmVwb3J0WydlcnJvcnMnXSAhPT0gMSkgewogICAgICAgICAgICBlY2hvICdTJzsKICAgICAgICB9CgogICAgICAgIGlmICgkcmVwb3J0Wyd3YXJuaW5ncyddID4gMCkgewogICAgICAgICAgICBlY2hvICcgQU5EICcuJHJlcG9ydFsnd2FybmluZ3MnXS4nIFdBUk5JTkcnOwogICAgICAgICAgICBpZiAoJHJlcG9ydFsnd2FybmluZ3MnXSAhPT0gMSkgewogICAgICAgICAgICAgICAgZWNobyAnUyc7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGVjaG8gJyBBRkZFQ1RJTkcgJy5jb3VudCgkcmVwb3J0WydtZXNzYWdlcyddKS4nIExJTkUnOwogICAgICAgIGlmIChjb3VudCgkcmVwb3J0WydtZXNzYWdlcyddKSAhPT0gMSkgewogICAgICAgICAgICBlY2hvICdTJzsKICAgICAgICB9CgogICAgICAgIGVjaG8gIlwwMzNbMG0iLlBIUF9FT0w7CgogICAgICAgIGZvcmVhY2ggKCRyZXBvcnRbJ21lc3NhZ2VzJ10gYXMgJGxpbmUgPT4gJGxpbmVFcnJvcnMpIHsKICAgICAgICAgICAgJHN0YXJ0TGluZSA9IG1heCgoJGxpbmUgLSAkc3Vycm91bmRpbmdMaW5lcyksIDEpOwogICAgICAgICAgICAkZW5kTGluZSAgID0gbWluKCgkbGluZSArICRzdXJyb3VuZGluZ0xpbmVzKSwgJGxhc3RMaW5lKTsKCiAgICAgICAgICAgICRzbmlwcGV0ID0gJyc7CiAgICAgICAgICAgIGlmIChpc3NldCgkbGluZVRva2Vuc1skc3RhcnRMaW5lXSkgPT09IHRydWUpIHsKICAgICAgICAgICAgICAgIGZvciAoJGkgPSAkbGluZVRva2Vuc1skc3RhcnRMaW5lXVsnc3RhcnQnXTsgJGkgPD0gJGxpbmVUb2tlbnNbJGVuZExpbmVdWydlbmQnXTsgJGkrKykgewogICAgICAgICAgICAgICAgICAgICRzbmlwcGV0TGluZSA9ICR0b2tlbnNbJGldWydsaW5lJ107CiAgICAgICAgICAgICAgICAgICAgaWYgKCRsaW5lVG9rZW5zWyRzbmlwcGV0TGluZV1bJ3N0YXJ0J10gPT09ICRpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFN0YXJ0aW5nIGEgbmV3IGxpbmUuCiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkc25pcHBldExpbmUgPT09ICRsaW5lKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc25pcHBldCAuPSAiXDAzM1sxbSIuJz4+ICc7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc25pcHBldCAuPSAnICAgJzsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgJHNuaXBwZXQgLj0gc3RyX3JlcGVhdCgnICcsICgkbWF4TGluZU51bUxlbmd0aCAtIHN0cmxlbigkc25pcHBldExpbmUpKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICRzbmlwcGV0IC49ICRzbmlwcGV0TGluZS4nOiAgJzsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRzbmlwcGV0TGluZSA9PT0gJGxpbmUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzbmlwcGV0IC49ICJcMDMzWzBtIjsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgaWYgKGlzc2V0KCR0b2tlbnNbJGldWydvcmlnX2NvbnRlbnQnXSkgPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJHRva2VuQ29udGVudCA9ICR0b2tlbnNbJGldWydvcmlnX2NvbnRlbnQnXTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAkdG9rZW5Db250ZW50ID0gJHRva2Vuc1skaV1bJ2NvbnRlbnQnXTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIGlmIChzdHJwb3MoJHRva2VuQ29udGVudCwgIlx0IikgIT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0b2tlbiAgICAgICAgICAgID0gJHRva2Vuc1skaV07CiAgICAgICAgICAgICAgICAgICAgICAgICR0b2tlblsnY29udGVudCddID0gJHRva2VuQ29udGVudDsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0cmlwb3MoUEhQX09TLCAnV0lOJykgPT09IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0YWIgPSAiXDAwMCI7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGFiID0gIlwwMzNbMzA7MW3Cu1wwMzNbMG0iOwogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAkcGhwY3NGaWxlLT50b2tlbml6ZXItPnJlcGxhY2VUYWJzSW5Ub2tlbigkdG9rZW4sICR0YWIsICJcMDAwIik7CiAgICAgICAgICAgICAgICAgICAgICAgICR0b2tlbkNvbnRlbnQgPSAkdG9rZW5bJ2NvbnRlbnQnXTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICR0b2tlbkNvbnRlbnQgPSBVdGlsXENvbW1vbjo6cHJlcGFyZUZvck91dHB1dCgkdG9rZW5Db250ZW50LCBbIlxyIiwgIlxuIiwgIlx0Il0pOwogICAgICAgICAgICAgICAgICAgICR0b2tlbkNvbnRlbnQgPSBzdHJfcmVwbGFjZSgiXDAwMCIsICcgJywgJHRva2VuQ29udGVudCk7CgogICAgICAgICAgICAgICAgICAgICR1bmRlcmxpbmUgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICBpZiAoJHNuaXBwZXRMaW5lID09PSAkbGluZSAmJiBpc3NldCgkbGluZUVycm9yc1skdG9rZW5zWyRpXVsnY29sdW1uJ11dKSA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAkdW5kZXJsaW5lID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIC8vIFVuZGVybGluZSBpbnZpc2libGUgY2hhcmFjdGVycyBhcyB3ZWxsLgogICAgICAgICAgICAgICAgICAgIGlmICgkdW5kZXJsaW5lID09PSB0cnVlICYmIHRyaW0oJHRva2VuQ29udGVudCkgPT09ICcnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRzbmlwcGV0IC49ICJcMDMzWzRtIi4nICcuIlwwMzNbMG0iLiR0b2tlbkNvbnRlbnQ7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCR1bmRlcmxpbmUgPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzbmlwcGV0IC49ICJcMDMzWzRtIjsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgJHNuaXBwZXQgLj0gJHRva2VuQ29udGVudDsKCiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkdW5kZXJsaW5lID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc25pcHBldCAuPSAiXDAzM1swbSI7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9Ly9lbmQgZm9yCiAgICAgICAgICAgIH0vL2VuZCBpZgoKICAgICAgICAgICAgZWNobyBzdHJfcmVwZWF0KCctJywgJHdpZHRoKS5QSFBfRU9MOwoKICAgICAgICAgICAgZm9yZWFjaCAoJGxpbmVFcnJvcnMgYXMgJGNvbHVtbiA9PiAkY29sRXJyb3JzKSB7CiAgICAgICAgICAgICAgICBmb3JlYWNoICgkY29sRXJyb3JzIGFzICRlcnJvcikgewogICAgICAgICAgICAgICAgICAgICRwYWRkaW5nID0gKCRtYXhMaW5lTnVtTGVuZ3RoIC0gc3RybGVuKCRsaW5lKSk7CiAgICAgICAgICAgICAgICAgICAgZWNobyAnTElORSAnLnN0cl9yZXBlYXQoJyAnLCAkcGFkZGluZykuJGxpbmUuJzogJzsKCiAgICAgICAgICAgICAgICAgICAgaWYgKCRlcnJvclsndHlwZSddID09PSAnRVJST1InKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8gIlwwMzNbMzFtRVJST1JcMDMzWzBtIjsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRyZXBvcnRbJ3dhcm5pbmdzJ10gPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlY2hvICcgICc7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBlY2hvICJcMDMzWzMzbVdBUk5JTkdcMDMzWzBtIjsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIGVjaG8gJyAnOwogICAgICAgICAgICAgICAgICAgIGlmICgkcmVwb3J0WydmaXhhYmxlJ10gPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8gJ1snOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoJGVycm9yWydmaXhhYmxlJ10gPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8gJ3gnOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWNobyAnICc7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8gJ10gJzsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICRtZXNzYWdlID0gJGVycm9yWydtZXNzYWdlJ107CiAgICAgICAgICAgICAgICAgICAgJG1lc3NhZ2UgPSBzdHJfcmVwbGFjZSgiXG4iLCAiXG4iLiRlcnJvclBhZGRpbmcsICRtZXNzYWdlKTsKICAgICAgICAgICAgICAgICAgICBpZiAoJHNob3dTb3VyY2VzID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRtZXNzYWdlID0gIlwwMzNbMW0iLiRtZXNzYWdlLiJcMDMzWzBtIi4nICgnLiRlcnJvclsnc291cmNlJ10uJyknOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgJGVycm9yTXNnID0gd29yZHdyYXAoCiAgICAgICAgICAgICAgICAgICAgICAgICRtZXNzYWdlLAogICAgICAgICAgICAgICAgICAgICAgICAkbWF4RXJyb3JTcGFjZSwKICAgICAgICAgICAgICAgICAgICAgICAgUEhQX0VPTC4kZXJyb3JQYWRkaW5nCiAgICAgICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICAgICAgICAgZWNobyAkZXJyb3JNc2cuUEhQX0VPTDsKICAgICAgICAgICAgICAgIH0vL2VuZCBmb3JlYWNoCiAgICAgICAgICAgIH0vL2VuZCBmb3JlYWNoCgogICAgICAgICAgICBlY2hvIHN0cl9yZXBlYXQoJy0nLCAkd2lkdGgpLlBIUF9FT0w7CiAgICAgICAgICAgIGVjaG8gcnRyaW0oJHNuaXBwZXQpLlBIUF9FT0w7CiAgICAgICAgfS8vZW5kIGZvcmVhY2gKCiAgICAgICAgZWNobyBzdHJfcmVwZWF0KCctJywgJHdpZHRoKS5QSFBfRU9MOwogICAgICAgIGlmICgkcmVwb3J0WydmaXhhYmxlJ10gPiAwKSB7CiAgICAgICAgICAgIGVjaG8gIlwwMzNbMW0iLidQSFBDQkYgQ0FOIEZJWCBUSEUgJy4kcmVwb3J0WydmaXhhYmxlJ10uJyBNQVJLRUQgU05JRkYgVklPTEFUSU9OUyBBVVRPTUFUSUNBTExZJy4iXDAzM1swbSIuUEhQX0VPTDsKICAgICAgICAgICAgZWNobyBzdHJfcmVwZWF0KCctJywgJHdpZHRoKS5QSFBfRU9MOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIHRydWU7CgogICAgfS8vZW5kIGdlbmVyYXRlRmlsZVJlcG9ydCgpCgoKICAgIC8qKgogICAgICogUHJpbnRzIGFsbCBlcnJvcnMgYW5kIHdhcm5pbmdzIGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJGNhY2hlZERhdGEgICAgQW55IHBhcnRpYWwgcmVwb3J0IGRhdGEgdGhhdCB3YXMgcmV0dXJuZWQgZnJvbQogICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZUZpbGVSZXBvcnQgZHVyaW5nIHRoZSBydW4uCiAgICAgKiBAcGFyYW0gaW50ICAgICR0b3RhbEZpbGVzICAgIFRvdGFsIG51bWJlciBvZiBmaWxlcyBwcm9jZXNzZWQgZHVyaW5nIHRoZSBydW4uCiAgICAgKiBAcGFyYW0gaW50ICAgICR0b3RhbEVycm9ycyAgIFRvdGFsIG51bWJlciBvZiBlcnJvcnMgZm91bmQgZHVyaW5nIHRoZSBydW4uCiAgICAgKiBAcGFyYW0gaW50ICAgICR0b3RhbFdhcm5pbmdzIFRvdGFsIG51bWJlciBvZiB3YXJuaW5ncyBmb3VuZCBkdXJpbmcgdGhlIHJ1bi4KICAgICAqIEBwYXJhbSBpbnQgICAgJHRvdGFsRml4YWJsZSAgVG90YWwgbnVtYmVyIG9mIHByb2JsZW1zIHRoYXQgY2FuIGJlIGZpeGVkLgogICAgICogQHBhcmFtIGJvb2wgICAkc2hvd1NvdXJjZXMgICBTaG93IHNvdXJjZXM/CiAgICAgKiBAcGFyYW0gaW50ICAgICR3aWR0aCAgICAgICAgIE1heGltdW0gYWxsb3dlZCBsaW5lIHdpZHRoLgogICAgICogQHBhcmFtIGJvb2wgICAkaW50ZXJhY3RpdmUgICBBcmUgd2UgcnVubmluZyBpbiBpbnRlcmFjdGl2ZSBtb2RlPwogICAgICogQHBhcmFtIGJvb2wgICAkdG9TY3JlZW4gICAgICBJcyB0aGUgcmVwb3J0IGJlaW5nIHByaW50ZWQgdG8gc2NyZWVuPwogICAgICoKICAgICAqIEByZXR1cm4gdm9pZAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2VuZXJhdGUoCiAgICAgICAgJGNhY2hlZERhdGEsCiAgICAgICAgJHRvdGFsRmlsZXMsCiAgICAgICAgJHRvdGFsRXJyb3JzLAogICAgICAgICR0b3RhbFdhcm5pbmdzLAogICAgICAgICR0b3RhbEZpeGFibGUsCiAgICAgICAgJHNob3dTb3VyY2VzPWZhbHNlLAogICAgICAgICR3aWR0aD04MCwKICAgICAgICAkaW50ZXJhY3RpdmU9ZmFsc2UsCiAgICAgICAgJHRvU2NyZWVuPXRydWUKICAgICkgewogICAgICAgIGlmICgkY2FjaGVkRGF0YSA9PT0gJycpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgZWNobyAkY2FjaGVkRGF0YTsKCiAgICAgICAgaWYgKCR0b1NjcmVlbiA9PT0gdHJ1ZSAmJiAkaW50ZXJhY3RpdmUgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIFV0aWxcVGltaW5nOjpwcmludFJ1blRpbWUoKTsKICAgICAgICB9CgogICAgfS8vZW5kIGdlbmVyYXRlKCkKCgp9Ly9lbmQgY2xhc3MKIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MTp7czoyNDoiXFBIUF9Db2RlU25pZmZlclxSZXBvcnRzIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjQ6IlxQSFBfQ29kZVNuaWZmZXJcUmVwb3J0cyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6IlJlcG9ydHMiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbmNsdWRlcyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBmdW5jdGlvbnMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY29uc3RhbnRzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNsYXNzZXMiO2E6MTp7czoyOToiXFBIUF9Db2RlU25pZmZlclxSZXBvcnRzXENvZGUiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfIjoxMzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mjk6IlxQSFBfQ29kZVNuaWZmZXJcUmVwb3J0c1xDb2RlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoiQ29kZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcGFyZW50IjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBpbXBsZW1lbnRzIjthOjE6e3M6MzE6IlxQSFBfQ29kZVNuaWZmZXJcUmVwb3J0c1xSZXBvcnQiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMToiXFBIUF9Db2RlU25pZmZlclxSZXBvcnRzXFJlcG9ydCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6IlJlcG9ydCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AY29uc3RhbnRzIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcHJvcGVydGllcyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGhvZHMiO2E6Mjp7czo1MToiXFBIUF9Db2RlU25pZmZlclxSZXBvcnRzXENvZGU6OmdlbmVyYXRlRmlsZVJlcG9ydCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NTQ6IkdlbmVyYXRlIGEgcGFydGlhbCByZXBvcnQgZm9yIGEgc2luZ2xlIHByb2Nlc3NlZCBmaWxlLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxOTY6IkZ1bmN0aW9uIHNob3VsZCByZXR1cm4gVFJVRSBpZiBpdCBwcmludGVkIG9yIHN0b3JlZCBkYXRhIGFib3V0IHRoZSBmaWxlCmFuZCBGQUxTRSBpZiBpdCBpZ25vcmVkIHRoZSBmaWxlLiBSZXR1cm5pbmcgVFJVRSBpbmRpY2F0ZXMgdGhhdCB0aGUgZmlsZSBhbmQKaXRzIGRhdGEgc2hvdWxkIGJlIGNvdW50ZWQgaW4gdGhlIGdyYW5kIHRvdGFscy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo1OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NjoicmVwb3J0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyMToiUHJlcGFyZWQgcmVwb3J0IGRhdGEuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjk6InBocGNzRmlsZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDtzOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMToiXFBIUF9Db2RlU25pZmZlclxGaWxlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoiRmlsZSI7fX1zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI3OiJUaGUgZmlsZSBiZWluZyByZXBvcnRlZCBvbi4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTE6InNob3dTb3VyY2VzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEzOiJTaG93IHNvdXJjZXM/IjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aTozO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjU6IndpZHRoIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI3OiJNYXhpbXVtIGFsbG93ZWQgbGluZSB3aWR0aC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjQ7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjIzOiJQSFBfQ29kZVNuaWZmZXJcUmVwb3J0cyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6Mjp7czo0OiJGaWxlIjtzOjI2OiJQSFBfQ29kZVNuaWZmZXJcRmlsZXNcRmlsZSI7czo0OiJVdGlsIjtzOjIwOiJQSFBfQ29kZVNuaWZmZXJcVXRpbCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUxOiJcUEhQX0NvZGVTbmlmZmVyXFJlcG9ydHNcQ29kZTo6Z2VuZXJhdGVGaWxlUmVwb3J0KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxODoiZ2VuZXJhdGVGaWxlUmVwb3J0Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjQ6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjY6InJlcG9ydCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjk6InBocGNzRmlsZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI3OiJcUEhQX0NvZGVTbmlmZmVyXEZpbGVzXEZpbGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo0OiJGaWxlIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjExOiJzaG93U291cmNlcyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6NToiZmFsc2UiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjM7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ3aWR0aCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiODAiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjMxOTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDE6IlxQSFBfQ29kZVNuaWZmZXJcUmVwb3J0c1xDb2RlOjpnZW5lcmF0ZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NTU6IlByaW50cyBhbGwgZXJyb3JzIGFuZCB3YXJuaW5ncyBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZC4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTA6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMDoiY2FjaGVkRGF0YSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDtzOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo4MToiQW55IHBhcnRpYWwgcmVwb3J0IGRhdGEgdGhhdCB3YXMgcmV0dXJuZWQgZnJvbQpnZW5lcmF0ZUZpbGVSZXBvcnQgZHVyaW5nIHRoZSBydW4uIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEwOiJ0b3RhbEZpbGVzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQ3OiJUb3RhbCBudW1iZXIgb2YgZmlsZXMgcHJvY2Vzc2VkIGR1cmluZyB0aGUgcnVuLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMToidG90YWxFcnJvcnMiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NDQ6IlRvdGFsIG51bWJlciBvZiBlcnJvcnMgZm91bmQgZHVyaW5nIHRoZSBydW4uIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aTozO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEzOiJ0b3RhbFdhcm5pbmdzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQ2OiJUb3RhbCBudW1iZXIgb2Ygd2FybmluZ3MgZm91bmQgZHVyaW5nIHRoZSBydW4uIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aTo0O086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEyOiJ0b3RhbEZpeGFibGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NDM6IlRvdGFsIG51bWJlciBvZiBwcm9ibGVtcyB0aGF0IGNhbiBiZSBmaXhlZC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjU7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTE6InNob3dTb3VyY2VzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEzOiJTaG93IHNvdXJjZXM/IjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aTo2O086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjU6IndpZHRoIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI3OiJNYXhpbXVtIGFsbG93ZWQgbGluZSB3aWR0aC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjc7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTE6ImludGVyYWN0aXZlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM1OiJBcmUgd2UgcnVubmluZyBpbiBpbnRlcmFjdGl2ZSBtb2RlPyI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fWk6ODtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo4OiJ0b1NjcmVlbiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDtzOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozODoiSXMgdGhlIHJlcG9ydCBiZWluZyBwcmludGVkIHRvIHNjcmVlbj8iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjk7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgB0eXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjExNTtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQxOiJcUEhQX0NvZGVTbmlmZmVyXFJlcG9ydHNcQ29kZTo6Z2VuZXJhdGUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6ImdlbmVyYXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjk6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEwOiJjYWNoZWREYXRhIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTA6InRvdGFsRmlsZXMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMToidG90YWxFcnJvcnMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjM7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMzoidG90YWxXYXJuaW5ncyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6NDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJ0b3RhbEZpeGFibGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjU7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMToic2hvd1NvdXJjZXMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjU6ImZhbHNlIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTo2O086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToid2lkdGgiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjI6IjgwIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTo3O086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTE6ImludGVyYWN0aXZlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czo1OiJmYWxzZSI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6ODtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjg6InRvU2NyZWVuIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czo0OiJ0cnVlIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzM4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzU5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwB1c2VkVHJhaXRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzYyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRhZGF0YSI7YTowOnt9fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGludGVyZmFjZXMiO2E6MDp7fXM6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAdHJhaXRzIjthOjA6e31zOjQwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGVudW1zIjthOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG1ldGFkYXRhIjthOjA6e319";