Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:二级页面详情¥page_detail¥少年歌行@@eyJkYXRhIjoie1wiYXNzb2NpYXRlZE1vZGVsc01hcEZvckpvaW5UYWJsZVwiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhGS1wiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhvdXRGS1wiOnt9LFwiZGlzcGxheU5hbWVcIjpcIuWGnOawkeW9seinhvCfpKFcIixcImZpZWxkc1RvU2V0VG9EZWZhdWx0XCI6W10sXCJpZFwiOjAsXCJsYXN0X2NoYXB0ZXJfcnVsZVwiOlwiXCIsXCJsaXN0VG9DbGVhckFzc29jaWF0ZWRGS1wiOltdLFwibGlzdFRvQ2xlYXJTZWxmRktcIjpbXSxcInBhZ2VMaXN0XCI6W3tcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJsYXp5XCIsXCJwYXRoXCI6XCJsYXp5XCIsXCJydWxlXCI6XCJ2YXIgbGF6eSA9ICQoJycpLmxhenlSdWxlKCgpID0+IHtcXG5mdW5jdGlvbiB4NXJ1bGUoamlleHVybCwgc3JjdXJsKSB7XFxuXFxuICAgIHNob3dMb2FkaW5nKFxcXCLpk77mjqXmo4DntKLkuK3vvIzor7fnqI3lgJkuLi5cXFwiKTtcXG4gICAgdmFyIHZpZGVvID0gJ3dlYlJ1bGU6Ly8nICsgamlleHVybCArICdAJyArICQudG9TdHJpbmcoKHNyY3VybCkgPT4ge1xcbiAgICAgICAgLy9mYmEubG9nKGZiYS5nZXRVcmxzKCkpO1xcbiAgICAgICAgdmFyIHVybHMgPSBfZ2V0VXJscygpO1xcbiAgICAgICAgaWYgKHdpbmRvdy5jb3VudCA9PSBudWxsIHx8IHdpbmRvdy5jb3VudCA9PSB1bmRlZmluZWQpIHtcXG4gICAgICAgICAgICB3aW5kb3cuY291bnQgPSAwXFxuICAgICAgICB9XFxuICAgICAgICBpZiAod2luZG93LmNvdW50ID49IDIzKSB7XFxuICAgICAgICAgICAgcmV0dXJuIHNyY3VybFxcbiAgICAgICAgfVxcbiAgICAgICAgd2luZG93LmNvdW50ID0gd2luZG93LmNvdW50ICsgMTtcXG4gICAgICAgIGlmICh3aW5kb3cuY291bnQgPiAxICYmIHdpbmRvdy5jb3VudCA8PSAzICYmIHdpbmRvdy5jb3VudCAhPSBudWxsICYmIHdpbmRvdy5jb3VudCAhPSB1bmRlZmluZWQpIHtcXG4gICAgICAgICAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcignYm9keScpLmlubmVyVGV4dC5zZWFyY2goL+inpuWPkeS6humYsuebl+mTvnzmnKrmjojmnYN85o6l5Y+j6Ziy55uXfOivt+WIsOS4u+ermeingueciy8pICE9IC0xKSB7XFxuICAgICAgICAgICAgICAgIGlmICghc3JjdXJsKSB7XFxuICAgICAgICAgICAgICAgIFxcdGZiYS5sb2coJ+Wwneivlei3s+mYsuebl+mqjOivgeS4gCcpO1xcbiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGxvY2F0aW9uLmhyZWY7XFxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgIFxcdGZiYS5sb2coJ+Wwneivlei3s+mYsuebl+mqjOivgeS6jCcpO1xcbiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IHNyY3VybFxcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgfTtcXG4gICAgICAgIH0gZWxzZSBpZih3aW5kb3cuY291bnQgPiAzICYmIHdpbmRvdy5jb3VudCAhPSBudWxsICYmIHdpbmRvdy5jb3VudCAhPSB1bmRlZmluZWQpe1xcbiAgICAgICAgICAgIGlmICh1cmxzLmxlbmd0aCA8IDEpIHtcXG4gICAgICAgICAgICAgICAgZmJhLmhpZGVMb2FkaW5nKCk7XFxuICAgICAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/mo4DntKLlpLHotKXvvIzlj6/og73pk77mjqXml6Dms5Xorr/pl67jgIInO1xcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodXJscy5sZW5ndGggPT0gMSkge1xcbiAgICAgICAgICAgICAgICBmYmEubG9nKCflsJ3or5Xnm7Tpk77kuI5KU09O6Kej5p6QJyk7XFxuICAgICAgICAgICAgICAgIGlmICh1cmxzWzBdLm1hdGNoKC9keWNkblxcXFwtdG9zXFxcXC5wc3RhdHB8XFxcXC5tM3U4fFxcXFwubXA0fFxcXFwuZmx2fG5ldGVhc2VcXFxcLmNvbXx2aWRlb19tcDR8dHlwZVxcXFw9bTN1OHxwdFxcXFw9bTN1OC8pICYmICF1cmxzWzBdLm1hdGNoKC9cXFxcLmh0bWx8bTN1OFxcXFwudHZ8XFxcXCZuZXh0fGFjXFxcXD1kbXxcXFxcPWh0dHB8aHR0cHNcXFxcOlxcXFwvXFxcXC9bXFxcXGRdXFxcXC5tM3U4fFxcXFw/dXJsXFxcXD1cXFxcL20zdTgvKSkge1xcbiAgICAgICAgICAgICAgICAgICAgLy9meV9icmlkZ2VfYXBwLmxvZyh1cmxzWzBdKVxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHVybHNbMF0uaW5kZXhPZignYmlsaXZpZGVvJykgIT0gLTEpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXJsc1swXSArICc7e1JlZmVyZXJAaHR0cHM6Ly93d3cuYmlsaWJpbGkuY29tJiZVc2VyLUFnZW50QE1vemlsbGEvNS4wfSc7XFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHVybHNbMF0uaW5kZXhPZigndGl0YW4ubWd0di5jb20nKSAhPSAtMSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzWzBdICsgJyNpc1ZpZGVvPXRydWUjJyArICc7e1JlZmVyZXJAd3d3Lm1ndHYuY29tJiZVc2VyLUFnZW50QE1vemlsbGEvNS4wfSc7XFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzWzBdXFxuICAgICAgICAgICAgICAgICAgICB9O1xcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGxvY2F0aW9uLmhyZWYubWF0Y2goL2R5Y2RuXFxcXC10b3NcXFxcLnBzdGF0cHxcXFxcLm0zdTh8XFxcXC5tcDR8XFxcXC5mbHZ8bmV0ZWFzZVxcXFwuY29tfHZpZGVvX21wNHx0eXBlXFxcXD1tM3U4fHB0XFxcXD1tM3U4LykgJiYgIWxvY2F0aW9uLmhyZWYubWF0Y2goL2h0bWx8bTN1OFxcXFwudHZ8XFxcXCZuZXh0fGFjXFxcXD1kbXxcXFxcPWh0dHB8aHR0cHNcXFxcOlxcXFwvXFxcXC9bXFxcXGRdXFxcXC5tM3U4fFxcXFw/dXJsXFxcXD1cXFxcL20zdTgvKSkge1xcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxvY2F0aW9uLmhyZWY7XFxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICB2YXIgaHRtbCA9IGZiYS5mZXRjaChsb2NhdGlvbi5ocmVmLCB7fSk7XFxuICAgICAgICAgICAgICAgICAgICBpZiAoIS9cXFxcPG1ldGEvLnRlc3QoaHRtbCkmJiEvXFxcXDxodG1sLy50ZXN0KGh0bWwpKSB7XFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShodG1sKS51cmw7XFxuICAgICAgICAgICAgICAgICAgICB9ZWxzZXtcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBsb2NhdGlvbi5ocmVmfVxcbiAgICAgICAgICAgICAgICB9O1xcbiAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgIGZiYS5sb2coJ+aXpeW/l+ajgOe0ouesrCcgKyB3aW5kb3cuY291bnQgKyAn5qyhJyk7XFxuICAgICAgICAgICAgICAgIGZvciAodmFyIGkgaW4gdXJscykge1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKHVybHNbaV0ubWF0Y2goL2R5Y2RuXFxcXC10b3NcXFxcLnBzdGF0cHxcXFxcLm0zdTh8XFxcXC5tcDR8XFxcXC5mbHZ8bmV0ZWFzZVxcXFwuY29tfHZpZGVvX21wNHx0eXBlXFxcXD1tM3U4fHB0XFxcXD1tM3U4LykgJiYgIXVybHNbaV0ubWF0Y2goL2h0bWx8bTN1OFxcXFwudHZ8XFxcXCZuZXh0fGFjXFxcXD1kbXxcXFxcPWh0dHB8aHR0cHNcXFxcOlxcXFwvXFxcXC9bXFxcXGRdXFxcXC5tM3U4fFxcXFw/dXJsXFxcXD1cXFxcL20zdTgvKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vZnlfYnJpZGdlX2FwcC5sb2coXFxcIkBAI1xcXCIgK3VybHNbaV0pXFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHVybHNbaV0uaW5kZXhPZignYmlsaXZpZGVvJykgIT0gLTEpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHNbaV0gKyAnO3tSZWZlcmVyQGh0dHBzOi8vd3d3LmJpbGliaWxpLmNvbSYmVXNlci1BZ2VudEBNb3ppbGxhLzUuMH0nO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodXJsc1tpXS5pbmRleE9mKCd0aXRhbi5tZ3R2LmNvbScpICE9IC0xKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2ldICsgJyNpc1ZpZGVvPXRydWUjJyArICc7e1JlZmVyZXJAd3d3Lm1ndHYuY29tJiZVc2VyLUFnZW50QE1vemlsbGEvNS4wfSc7XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh1cmxzW2ldLmluZGV4T2YoJ2p1aGFva2FuJykgIT0gLTEpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHNbaV0gKyAnO3tSZWZlcmVyQGh0dHBzOi8vd3d3Lmp1aGFva2FuLmNjL30nO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodXJsc1tpXS5pbmRleE9mKCdvamJrJykgIT0gLTEpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHNbaV0gKyAnO3tSZWZlcmVyQGh0dHBzOi8vdi5vamJranguY29tL30nO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodXJsc1tpXS5pbmRleE9mKCd3a2ZpbGUnKSAhPSAtMSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXJsc1tpXSArICc7e1JlZmVyZXJAaHR0cHM6Ly9mYW50dWFuLndrZmlsZS5jb20vfSc7XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHNbaV0gKyAnI2lzVmlkZW89dHJ1ZSMnXFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICB9IC8vZW5kIGZvciBpXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICB9LCBzcmN1cmwpO1xcbiAgICByZXR1cm4gdmlkZW9cXG59XFxuLy/nu5PmnZ94NXJ1bGXlvLrlipvll4XmjqJcXG4gICAgcmV0dXJuIHg1cnVsZShpbnB1dCwgaW5wdXQpO1xcbn0pO1wifV0sXCJzYXZlZFwiOmZhbHNlLFwidGl0bGVcIjpcIui9u+WQiOmbhi7nvJjliIZcIixcInZlcnNpb25cIjowLFwidXJsXCI6XCJodHRwczovL3YuZW1zZG4uY24vdm9kLWRldGFpbC1pZC00MDM4NC5odG1sI2ltbWVyc2l2ZVRoZW1lIztnZXQ7VVRGLTg7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKExpbnV477yb77ybIEFuZHJvaWQgMTHvvJvvvJsgTWkgMTAgUHJvKSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvODguMC40MzI0LjE1MiBNb2JpbGUgU2FmYXJpLzUzNy4zNn1cIixcImNvbF90eXBlXCI6XCJtb3ZpZV8xX3ZlcnRpY2FsX3BpY19ibHVyXCIsXCJmaW5kX3J1bGVcIjpcImpzOlxcbnZhciBkID0gW107XFxudmFyIGh0bWwgPSBnZXRSZXNDb2RlKCk7XFxuZXZhbChKU09OLnBhcnNlKGZldGNoKCdoaWtlcjovL3BhZ2UvbGF6eScsIHt9KSkucnVsZSk7XFxuXFxuLy/nur/ot6/lkI3liJfooajnmoTlrprkvY0o5YiX6KGo6KeE5YiZKVxcbnZhciBhcnRzID0gcGFyc2VEb21Gb3JBcnJheShodG1sLCAnI2xlZnRUYWJCb3gmJi5oZCYmbGknKTtcXG5cXG4vL+e6v+i3r+WQjeWIl+ihqOWQjeensOeahOWumuS9jSjoioLngrnop4TliJkpXFxudmFyIHRhYnMgPSBbXTtcXG5mb3IgKHZhciBpIGluIGFydHMpIHtcXG4gICAgdGFicy5wdXNoKHBhcnNlRG9tRm9ySHRtbChhcnRzW2ldLCAnVGV4dCcpKVxcbn1cXG5cXG4vL+aSreaUvuWIl+ihqOeahOWIl+ihqOeahOWumuS9jSjliJfooajop4TliJkpXFxudmFyIGNvbnRzID0gcGFyc2VEb21Gb3JBcnJheShodG1sLCAnYm9keSYmLm51bUxpc3QnKTsvL+S7juesrOS6jOS4quW8gOWni+WumuS9jVxcbnZhciBsaXN0cyA9IFtdO1xcbmZvciAodmFyIGkgaW4gY29udHMpIHtcXG4gICAgbGlzdHMucHVzaChwYXJzZURvbUZvckFycmF5KGNvbnRzW2ldLCAnYm9keSYmYScpKS8v56ys5LiA6ZuG5a6a5L2NKOiKgueCueinhOWImSlcXG59XFxuXFxudmFyIOS4u+a8lCA9IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLnBhZ2UtYmQmJi5kZXNjX2l0ZW0sMSYmVGV4dCcpO1xcblxcbnZhciDnsbvlnosgPSBwYXJzZURvbUZvckh0bWwoaHRtbCwgJy5wYWdlLWJkJiYuZGVzY19pdGVtLDImJlRleHQnKTtcXG5cXG52YXIg5pu05pawID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcucGFnZS1iZCYmLmRlc2NfaXRlbSwzJiZUZXh0Jyk7XFxuXFxudmFyIOWvvOa8lCA9IHBhcnNlRG9tRm9ySHRtbChodG1sLCAnLnBhZ2UtYmQmJi5kZXNjX2l0ZW0sNCYmVGV4dCcpO1xcblxcbnZhciDlm77niYcgPSBwYXJzZURvbShodG1sLCAnaW1nJiZzcmMnKTtcXG5cXG52YXIg566A5LuLID0gcGFyc2VEb21Gb3JIdG1sKGh0bWwsICcuZGV0YWlsLWNvbiYmcCYmVGV4dCcpLnJlcGxhY2UoJ+eugCDku4vvvJonLCcnKTtcXG5cXG52YXIg5Zu+54mH6ZO+5o6lID0gZ2V0VXJsKCk7XFxuXFxudmFyIENvbG9yID0gXFxcIiNmMTNiNjZhXFxcIjtcXG52YXIgQ29sb3IxID0gXFxcIiMwOThBQzFcXFwiO1xcbmZ1bmN0aW9uIGdldEhlYWQodGl0bGUpIHtcXG4gICAgcmV0dXJuICfigJjigJjigJnigJk8c3Ryb25nPjxmb250IGNvbG9yPVxcXCInICsgQ29sb3IgKyAnXFxcIj4nICsgdGl0bGUgKyAnPC9mcm9udD48L3N0cm9uZz4nO1xcbn1cXG5sZXQgbGluZV9tb2RlbCA9IDg7XFxubGV0IGxpbmVfdHlwZV9tb2RlbCA9ICdibGFua19ibG9jayc7XFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6IOS4u+a8lCArICdcXFxcbicgKyDnsbvlnossXFxuICAgIGRlc2M6IOabtOaWsCArICdcXFxcbicgKyDlr7zmvJQsXFxuICAgIHBpY191cmw6IOWbvueJhyxcXG4gICAgdXJsOiDlm77niYfpk77mjqUsXFxuICAgIGNvbF90eXBlOiAnJ1xcbn0pO1xcbmQucHVzaCh7XFxuICAgIHRpdGxlOiAn4oCY4oCY4oCZ4oCZPHNtYWxsPjxmb250IGNvbG9yPVxcXCIjZmYxNDhlOGVcXFwiPueugOS7i++8micgKyDnroDku4suc3Vic3RyKDAsIDU1KSArICcuLi48L2ZvbnQ+PHNtYWxsPjxmb250IGNvbG9yPVxcXCJyZWRcXFwiPuivpuaDhTwvZm9udD48L3NtYWxsPjwvc21hbGw+JyxcXG4gICAgdXJsOiAnaGlrZXI6Ly9lbXB0eSMnICsgJ1xcXFxuJyArIOeugOS7iyArIGBAcnVsZT1qczp2YXIgcmVzID0ge307IHZhciBkID0gW107ZC5wdXNoKHt0aXRsZTon5b2x54mH566A5LuL77yaJysgTVlfVVJMLnNwbGl0KCdoaWtlcjovL2VtcHR5IycpWzFdLGNvbF90eXBlOiAnbG9uZ190ZXh0J30pO3Jlcy5kYXRhID0gZDsgc2V0SG9tZVJlc3VsdChyZXMpO2AsXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcbn0pO1xcbmZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7XFxuXFx0XFx0ZC5wdXNoKHtcXG5cXHRcXHRcXHRjb2xfdHlwZTogXFxcImJsYW5rX2Jsb2NrXFxcIlxcblxcdFxcdH0pXFxuXFx0fVxcbmlmKGdldFZhcihcXFwibXNcXFwiKT09XFxcIjFcXFwiKXtcXG52YXIgQ29sb3IgPVxcXCJyZWRcXFwiO1xcbn1lbHNle1xcbnZhciBDb2xvcj1cXFwiIzA5OEFDMVxcXCJcXG59XFxuZnVuY3Rpb24gZ2V0SGVhZCh0aXRsZSkge1xcbiAgICByZXR1cm4gJ+KAmOKAmOKAmeKAmTxmb250IGNvbG9yPVxcXCInICsgQ29sb3IgKyAnXFxcIj4nICsgdGl0bGUgKyAnPC9mcm9udD4nO1xcbn1cXG5kLnB1c2goe1xcbiAgIHRpdGxlOihnZXRWYXIoXFxcIm1zXFxcIik9PVxcXCIxXFxcIj9nZXRIZWFkKFxcXCLimaXvuI/mjqLll4VcXFwiKTpnZXRIZWFkKFxcXCLwn5KO5YWN5ZeFXFxcIikpLFxcbiB1cmw6XFxcImhpa2VyOi8vZW1wdHlcXFwiK2BAbGF6eVJ1bGU9LmpzOnB1dFZhcignbXMnLGdldFZhcignbXMnKT09JzEnPycwJzonMScpO3JlZnJlc2hQYWdlKCk7J3RvYXN0Oi8v5bey5YiH5o2i5qih5byPJ2AsXFxuICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcblxcbn0pXFxuZnVuY3Rpb24gc2V0VGFicyh0YWJzLCB2YXJpKSB7XFxuICAgIGZvciAodmFyIGkgaW4gdGFicykge1xcbiAgICAgICAgdmFyIHVybCA9IFxcXCIjbm9Mb2FkaW5nI0BsYXp5UnVsZT0uanM6cHV0VmFyKCdcXFwiICsgdmFyaSArIFxcXCInLCAnXFxcIiArIGkgKyBcXFwiJyk7cmVmcmVzaFBhZ2UoZmFsc2UpOyd0b2FzdDovL+WIh+aNouaIkOWKn++8gSc7JyNub0hpc3RvcnkjaGlrZXI6Ly9lbXB0eSdcXFwiO1xcbiAgICAgICAgZC5wdXNoKHtcXG4gICAgICAgICAgICB0aXRsZTogZ2V0VmFyKHZhcmksICcwJykgPT0gaSA/IGdldEhlYWQodGFic1tpXSkgOiB0YWJzW2ldLFxcbiAgICAgICAgICAgIHVybDogdXJsLFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAnc2Nyb2xsX2J1dHRvbidcXG4gICAgICAgIH0pXFxuICAgIH1cXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIGNvbF90eXBlOiAnbGluZV9ibGFuaydcXG4gICAgfSlcXG59XFxuZnVuY3Rpb24gc2V0TGlzdHMobGlzdHMsIGluZGV4KSB7XFxuICAgIGQucHVzaCh7XFxuICAgICAgICBjb2xfdHlwZTogJ2xpbmVfYmxhbmsnXFxuICAgIH0pXFxufVxcbmlmIChnZXRWYXIoJ3Noc29ydCcpID09ICcxJykge1xcbiAgICB2YXIgc3ggPSAn4oCY4oCY4oCZ4oCZPGZvbnQgY29sb3I9XFxcIiMwYWEzNDRcXFwiPuWIl+ihqDo8L2ZvbnQ+PC9zbWFsbD4nICsgJzxzbWFsbD48Zm9udCBjb2xvcj1cXFwiIzBhYTM0NFxcXCI+5q2j5bqP4oaRPC9mb250Pjwvc21hbGw+JyArICc8c21hbGw+PGZvbnQgY29sb3I9XFxcIiNmZjRjMDBcXFwiPuWPjeW6j+KGkzwvZm9udD48L3NtYWxsPic7XFxufSBlbHNlIHtcXG4gICAgdmFyIHN4ID0gJ+KAmOKAmOKAmeKAmTxmb250IGNvbG9yPVxcXCIjMGFhMzQ0XFxcIj7liJfooag6PC9mb250Pjwvc21hbGw+JyArICc8c21hbGw+PGZvbnQgY29sb3I9XFxcIiNmZjRjMDBcXFwiPuato+W6j+KGkTwvZm9udD48L3NtYWxsPicgKyAnPHNtYWxsPjxmb250IGNvbG9yPVxcXCIjMGFhMzQ0XFxcIj7lj43luo/ihpM8L2ZvbnQ+PC9zbWFsbD4nO1xcbn1cXG5mdW5jdGlvbiBzZXRMaXN0cyhsaXN0cywgaW5kZXgpIHtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn4oCY4oCY4oCZ4oCZPHNwYW4gc3R5bGU9XFxcImNvbG9yOicgKyBDb2xvcjEgKyAnXFxcIj48c21hbGw+PC9zbWFsbD4nICsgJ1xcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdFxcXFx0XFxcXHRcXFxcdDxzcGFuIHN0eWxlPVxcXCJmbG9hdDpyaWdodFxcXCI+JyArICc8c21hbGw+JyArIHN4ICsgJzwvc21hbGw+JyxcXG4gICAgICAgIHVybDogYCNub0xvYWRpbmcjQGxhenlSdWxlPS5qczpsZXQgY29uZiA9IGdldFZhcignc2hzb3J0Jyk7aWYoY29uZj09JzEnKXtwdXRWYXIoe2tleTonc2hzb3J0JywgdmFsdWU6JzAnfSk7fWVsc2V7cHV0VmFyKHtrZXk6J3Noc29ydCcsIHZhbHVlOicxJ30pfTtyZWZyZXNoUGFnZSgpOyd0b2FzdDovL+WIh+aNouaOkuW6j+aIkOWKnyc7JyNub0hpc3RvcnkjaGlrZXI6Ly9lbXB0eSdgLFxcbiAgICAgICAgY29sX3R5cGU6ICd0ZXh0X2NlbnRlcl8xJ1xcbiAgICB9KVxcbiAgICB2YXIgbGlzdCA9IGxpc3RzW2luZGV4XTtcXG5cXG4gICAgaWYgKGdldFZhcignc2hzb3J0JykgPT0gJzEnKSB7XFxuICAgICAgICB0cnkge1xcbiAgICAgICAgICAgIGZvciAodmFyIGogPSBsaXN0Lmxlbmd0aCAtIDE7IGogPj0gMDsgai0tKSB7XFxuICAgICAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogcGFyc2VEb21Gb3JIdG1sKGxpc3Rbal0sICdhJiZUZXh0JykucmVwbGFjZSgv56ysfOmbhnzor5185pyfL2csICcnKSxcXG4gICAgICAgICAgICAgICAgICAgIHVybDpwYXJzZURvbShsaXN0W2pdLCAnYSYmaHJlZicpICtsYXp5LFxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6IGxpc3QubGVuZ3RoID4gNCA/ICd0ZXh0XzUnIDogJ3RleHRfMidcXG4gICAgICAgICAgICAgICAgfSk7XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfSBjYXRjaCAoZSkge1xcbiAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgIHRpdGxlOiAn5rKh5pyJ6YCJ6ZuG5ZOf77yM5LiN5L+h54K55Zu+54mH5Y6755yL55yL8J+RgCcsXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMSdcXG4gICAgICAgICAgICB9KTtcXG4gICAgICAgIH1cXG4gICAgfSBlbHNlIHtcXG4gICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgZm9yICh2YXIgaiA9IDA7IGogPCBsaXN0Lmxlbmd0aDsgaisrKSB7XFxuICAgICAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogcGFyc2VEb21Gb3JIdG1sKGxpc3Rbal0sICdhJiZUZXh0JykucmVwbGFjZSgv56ysfOmbhnzor5185pyfL2csICcnKSxcXG4gICAgICAgICAgICAgICAgICAgIHVybDpwYXJzZURvbShsaXN0W2pdLCAnYSYmaHJlZicpICtsYXp5LFxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6IGxpc3QubGVuZ3RoID4gNCA/ICd0ZXh0XzUnIDogJ3RleHRfMidcXG4gICAgICAgICAgICAgICAgfSk7XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfSBjYXRjaCAoZSkge1xcbiAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgIHRpdGxlOiAn5rKh5pyJ6YCJ6ZuG5ZOf77yM5LiN5L+h54K55Zu+54mH5Y6755yL55yL8J+RgCcsXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMSdcXG4gICAgICAgICAgICB9KTtcXG4gICAgICAgIH1cXG5cXG4gICAgfVxcbn1cXG5zZXRUYWJzKHRhYnMsIE1ZX1VSTCk7XFxuc2V0TGlzdHMobGlzdHMsIGdldFZhcihNWV9VUkwsICcwJykpO1xcbmQucHVzaCh7XFxuICAgIHRpdGxlOiAnPGJyPicsXFxuICAgIGNvbF90eXBlOiAncmljaF90ZXh0J1xcbn0pO1xcbnNldFJlc3VsdChkKTtcIixcImdyb3VwXCI6XCLovbvlkIjpm4Yu57yY5YiGXCIsXCJ1YVwiOlwibW9iaWxlXCIsXCJwcmVSdWxlXCI6XCJcIixcInBhZ2VzXCI6XCJbe1xcXCJjb2xfdHlwZVxcXCI6XFxcIm1vdmllXzNcXFwiLFxcXCJuYW1lXFxcIjpcXFwibGF6eVxcXCIsXFxcInBhdGhcXFwiOlxcXCJsYXp5XFxcIixcXFwicnVsZVxcXCI6XFxcInZhciBsYXp5ID0gJCgnJykubGF6eVJ1bGUoKCkgPT4ge1xcXFxuZnVuY3Rpb24geDVydWxlKGppZXh1cmwsIHNyY3VybCkge1xcXFxuXFxcXG4gICAgc2hvd0xvYWRpbmcoXFxcXFxcXCLpk77mjqXmo4DntKLkuK3vvIzor7fnqI3lgJkuLi5cXFxcXFxcIik7XFxcXG4gICAgdmFyIHZpZGVvID0gJ3dlYlJ1bGU6Ly8nICsgamlleHVybCArICdAJyArICQudG9TdHJpbmcoKHNyY3VybCkgPT4ge1xcXFxuICAgICAgICAvL2ZiYS5sb2coZmJhLmdldFVybHMoKSk7XFxcXG4gICAgICAgIHZhciB1cmxzID0gX2dldFVybHMoKTtcXFxcbiAgICAgICAgaWYgKHdpbmRvdy5jb3VudCA9PSBudWxsIHx8IHdpbmRvdy5jb3VudCA9PSB1bmRlZmluZWQpIHtcXFxcbiAgICAgICAgICAgIHdpbmRvdy5jb3VudCA9IDBcXFxcbiAgICAgICAgfVxcXFxuICAgICAgICBpZiAod2luZG93LmNvdW50ID49IDIzKSB7XFxcXG4gICAgICAgICAgICByZXR1cm4gc3JjdXJsXFxcXG4gICAgICAgIH1cXFxcbiAgICAgICAgd2luZG93LmNvdW50ID0gd2luZG93LmNvdW50ICsgMTtcXFxcbiAgICAgICAgaWYgKHdpbmRvdy5jb3VudCA+IDEgJiYgd2luZG93LmNvdW50IDw9IDMgJiYgd2luZG93LmNvdW50ICE9IG51bGwgJiYgd2luZG93LmNvdW50ICE9IHVuZGVmaW5lZCkge1xcXFxuICAgICAgICAgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2JvZHknKS5pbm5lclRleHQuc2VhcmNoKC/op6blj5HkuobpmLLnm5fpk7585pyq5o6I5p2DfOaOpeWPo+mYsuebl3zor7fliLDkuLvnq5nop4LnnIsvKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgIGlmICghc3JjdXJsKSB7XFxcXG4gICAgICAgICAgICAgICAgXFxcXHRmYmEubG9nKCflsJ3or5Xot7PpmLLnm5fpqozor4HkuIAnKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGxvY2F0aW9uLmhyZWY7XFxcXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICBcXFxcdGZiYS5sb2coJ+Wwneivlei3s+mYsuebl+mqjOivgeS6jCcpO1xcXFxuICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbi5ocmVmID0gc3JjdXJsXFxcXG4gICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgfTtcXFxcbiAgICAgICAgfSBlbHNlIGlmKHdpbmRvdy5jb3VudCA+IDMgJiYgd2luZG93LmNvdW50ICE9IG51bGwgJiYgd2luZG93LmNvdW50ICE9IHVuZGVmaW5lZCl7XFxcXG4gICAgICAgICAgICBpZiAodXJscy5sZW5ndGggPCAxKSB7XFxcXG4gICAgICAgICAgICAgICAgZmJhLmhpZGVMb2FkaW5nKCk7XFxcXG4gICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ajgOe0ouWksei0pe+8jOWPr+iDvemTvuaOpeaXoOazleiuv+mXruOAgic7XFxcXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHVybHMubGVuZ3RoID09IDEpIHtcXFxcbiAgICAgICAgICAgICAgICBmYmEubG9nKCflsJ3or5Xnm7Tpk77kuI5KU09O6Kej5p6QJyk7XFxcXG4gICAgICAgICAgICAgICAgaWYgKHVybHNbMF0ubWF0Y2goL2R5Y2RuXFxcXFxcXFwtdG9zXFxcXFxcXFwucHN0YXRwfFxcXFxcXFxcLm0zdTh8XFxcXFxcXFwubXA0fFxcXFxcXFxcLmZsdnxuZXRlYXNlXFxcXFxcXFwuY29tfHZpZGVvX21wNHx0eXBlXFxcXFxcXFw9bTN1OHxwdFxcXFxcXFxcPW0zdTgvKSAmJiAhdXJsc1swXS5tYXRjaCgvXFxcXFxcXFwuaHRtbHxtM3U4XFxcXFxcXFwudHZ8XFxcXFxcXFwmbmV4dHxhY1xcXFxcXFxcPWRtfFxcXFxcXFxcPWh0dHB8aHR0cHNcXFxcXFxcXDpcXFxcXFxcXC9cXFxcXFxcXC9bXFxcXFxcXFxkXVxcXFxcXFxcLm0zdTh8XFxcXFxcXFw/dXJsXFxcXFxcXFw9XFxcXFxcXFwvbTN1OC8pKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIC8vZnlfYnJpZGdlX2FwcC5sb2codXJsc1swXSlcXFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHVybHNbMF0uaW5kZXhPZignYmlsaXZpZGVvJykgIT0gLTEpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzWzBdICsgJzt7UmVmZXJlckBodHRwczovL3d3dy5iaWxpYmlsaS5jb20mJlVzZXItQWdlbnRATW96aWxsYS81LjB9JztcXFxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh1cmxzWzBdLmluZGV4T2YoJ3RpdGFuLm1ndHYuY29tJykgIT0gLTEpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzWzBdICsgJyNpc1ZpZGVvPXRydWUjJyArICc7e1JlZmVyZXJAd3d3Lm1ndHYuY29tJiZVc2VyLUFnZW50QE1vemlsbGEvNS4wfSc7XFxcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdXJsc1swXVxcXFxuICAgICAgICAgICAgICAgICAgICB9O1xcXFxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAobG9jYXRpb24uaHJlZi5tYXRjaCgvZHljZG5cXFxcXFxcXC10b3NcXFxcXFxcXC5wc3RhdHB8XFxcXFxcXFwubTN1OHxcXFxcXFxcXC5tcDR8XFxcXFxcXFwuZmx2fG5ldGVhc2VcXFxcXFxcXC5jb218dmlkZW9fbXA0fHR5cGVcXFxcXFxcXD1tM3U4fHB0XFxcXFxcXFw9bTN1OC8pICYmICFsb2NhdGlvbi5ocmVmLm1hdGNoKC9odG1sfG0zdThcXFxcXFxcXC50dnxcXFxcXFxcXCZuZXh0fGFjXFxcXFxcXFw9ZG18XFxcXFxcXFw9aHR0cHxodHRwc1xcXFxcXFxcOlxcXFxcXFxcL1xcXFxcXFxcL1tcXFxcXFxcXGRdXFxcXFxcXFwubTN1OHxcXFxcXFxcXD91cmxcXFxcXFxcXD1cXFxcXFxcXC9tM3U4LykpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxvY2F0aW9uLmhyZWY7XFxcXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgdmFyIGh0bWwgPSBmYmEuZmV0Y2gobG9jYXRpb24uaHJlZiwge30pO1xcXFxuICAgICAgICAgICAgICAgICAgICBpZiAoIS9cXFxcXFxcXDxtZXRhLy50ZXN0KGh0bWwpJiYhL1xcXFxcXFxcPGh0bWwvLnRlc3QoaHRtbCkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoaHRtbCkudXJsO1xcXFxuICAgICAgICAgICAgICAgICAgICB9ZWxzZXtcXFxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxvY2F0aW9uLmhyZWZ9XFxcXG4gICAgICAgICAgICAgICAgfTtcXFxcbiAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgZmJhLmxvZygn5pel5b+X5qOA57Si56ysJyArIHdpbmRvdy5jb3VudCArICfmrKEnKTtcXFxcbiAgICAgICAgICAgICAgICBmb3IgKHZhciBpIGluIHVybHMpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHVybHNbaV0ubWF0Y2goL2R5Y2RuXFxcXFxcXFwtdG9zXFxcXFxcXFwucHN0YXRwfFxcXFxcXFxcLm0zdTh8XFxcXFxcXFwubXA0fFxcXFxcXFxcLmZsdnxuZXRlYXNlXFxcXFxcXFwuY29tfHZpZGVvX21wNHx0eXBlXFxcXFxcXFw9bTN1OHxwdFxcXFxcXFxcPW0zdTgvKSAmJiAhdXJsc1tpXS5tYXRjaCgvaHRtbHxtM3U4XFxcXFxcXFwudHZ8XFxcXFxcXFwmbmV4dHxhY1xcXFxcXFxcPWRtfFxcXFxcXFxcPWh0dHB8aHR0cHNcXFxcXFxcXDpcXFxcXFxcXC9cXFxcXFxcXC9bXFxcXFxcXFxkXVxcXFxcXFxcLm0zdTh8XFxcXFxcXFw/dXJsXFxcXFxcXFw9XFxcXFxcXFwvbTN1OC8pKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAvL2Z5X2JyaWRnZV9hcHAubG9nKFxcXFxcXFwiQEAjXFxcXFxcXCIgK3VybHNbaV0pXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodXJsc1tpXS5pbmRleE9mKCdiaWxpdmlkZW8nKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2ldICsgJzt7UmVmZXJlckBodHRwczovL3d3dy5iaWxpYmlsaS5jb20mJlVzZXItQWdlbnRATW96aWxsYS81LjB9JztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodXJsc1tpXS5pbmRleE9mKCd0aXRhbi5tZ3R2LmNvbScpICE9IC0xKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHNbaV0gKyAnI2lzVmlkZW89dHJ1ZSMnICsgJzt7UmVmZXJlckB3d3cubWd0di5jb20mJlVzZXItQWdlbnRATW96aWxsYS81LjB9JztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodXJsc1tpXS5pbmRleE9mKCdqdWhhb2thbicpICE9IC0xKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHNbaV0gKyAnO3tSZWZlcmVyQGh0dHBzOi8vd3d3Lmp1aGFva2FuLmNjL30nO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh1cmxzW2ldLmluZGV4T2YoJ29qYmsnKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2ldICsgJzt7UmVmZXJlckBodHRwczovL3Yub2pia2p4LmNvbS99JztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodXJsc1tpXS5pbmRleE9mKCd3a2ZpbGUnKSAhPSAtMSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB1cmxzW2ldICsgJzt7UmVmZXJlckBodHRwczovL2ZhbnR1YW4ud2tmaWxlLmNvbS99JztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVybHNbaV0gKyAnI2lzVmlkZW89dHJ1ZSMnXFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICB9IC8vZW5kIGZvciBpXFxcXG4gICAgICAgICAgICB9XFxcXG4gICAgICAgIH1cXFxcbiAgICB9LCBzcmN1cmwpO1xcXFxuICAgIHJldHVybiB2aWRlb1xcXFxufVxcXFxuLy/nu5PmnZ94NXJ1bGXlvLrlipvll4XmjqJcXFxcbiAgICByZXR1cm4geDVydWxlKGlucHV0LCBpbnB1dCk7XFxcXG59KTtcXFwifV1cIn0iLCJwaWNVcmwiOiJodHRwczovL3BpYzMuNThjZG4uY29tLmNuL25vd2F0ZXIvd2ViaW0vYmlnL25fdjJmZThiY2JjMDM2ODM0OGMwODkxMTlkZDViY2FkOGVhOC5qcGdAUmVmZXJlcj0iLCJ0aXRsZSI6IuWwkeW5tOatjOihjCJ9
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement