<?php
$data = json_decode('[{"artist":"Lee Fields & The Expressions", "title":"Stone Angel (Instrumental)", "time":"5:09", "url":"http://m...content-available-to-author-only...o.net/getsong/122969125908759"}, {"artist":"Justin Hurwitz, Ryan Gosling & Emma Stone", "title":"City Of Stars / May Finally Come True", "time":"4:17", "url":"http://m...content-available-to-author-only...o.net/getsong/123005062041973"}, {"artist":"Lee Fields & The Expressions", "title":"Stone Angel", "time":"5:09", "url":"http://m...content-available-to-author-only...o.net/getsong/122970798940574"}, {"artist":"Ryan Gosling & Emma Stone", "title":"A Lovely Night", "time":"3:56", "url":"http://m...content-available-to-author-only...o.net/getsong/123007812887006"}, {"artist":"Ryan Gosling, Emma Stone", "title":"A Lovely Night", "time":"3:56", "url":"http://m...content-available-to-author-only...o.net/getsong/123005983392032"}, {"artist":"Ryan Gosling feat. Emma Stone", "title":"City of Stars", "time":"2:29", "url":"http://m...content-available-to-author-only...o.net/getsong/123007812944364"}, {"artist":"Lee Fields", "title":"Stone Angel", "time":"5:08", "url":"http://m...content-available-to-author-only...o.net/getsong/76881833722168"}, {"artist":"Justin Hurwitz", "title":"City of Stars (Humming) [feat. Emma Stone]", "time":"2:43", "url":"http://m...content-available-to-author-only...o.net/getsong/123005061947742"}, {"artist":"Shogun Feat. Emma Lock", "title":"Save Me (Stoneface & Terminal Vocal Mix)", "time":"6:25", "url":"http://m...content-available-to-author-only...o.net/getsong/122894434038111"}, {"artist":"Shogun feat. Emma Lock", "title":"Save Me (Stoneface & Terminal vocal mix)", "time":"8:51", "url":"http://m...content-available-to-author-only...o.net/getsong/48288951345578"}, {"artist":"Heuse", "title":"Stones (feat. Chris Linton & Emma Sameth)", "time":"2:55", "url":"http://m...content-available-to-author-only...o.net/getsong/123006010822985"}, {"artist":"Emma Deigman", "title":"Tell Your Mama Stonebridge Club Remix", "time":"7:21", "url":"http://m...content-available-to-author-only...o.net/getsong/73791306678772"}, {"artist":"Emma Stone/Ryan Gosling", "title":"A Lovely Night", "time":"3:57", "url":"http://m...content-available-to-author-only...o.net/getsong/123000854442439"}, {"artist":"Emma Stone, Callie Hernandez, Sonoya Mizuno, Jessica Rothe", "title":"Someone in the Crowd", "time":"4:19", "url":"http://m...content-available-to-author-only...o.net/getsong/123005983252990"}, {"artist":"Emma Stone", "title":"Someone In The Crowd", "time":"4:19", "url":"http://m...content-available-to-author-only...o.net/getsong/123006180020645"}, {"artist":"Cosmic Gate", "title":"London Rain (Stoneface & Terminal Remix)", "time":"7:47", "url":"http://m...content-available-to-author-only...o.net/getsong/39550523491444"}, {"artist":"Cosmic Gate", "title":"London Rain (Ruben De Ronde Remix)", "time":"3:08", "url":"http://m...content-available-to-author-only...o.net/getsong/122880090461253"}, {"artist":"Cosmic Gate", "title":"London Rain (Stoneface And Terminal Remix)", "time":"7:47", "url":"http://m...content-available-to-author-only...o.net/getsong/122880090465350"}, {"artist":"Marcus Schossow & Reeves feat. Emma Hewitt", "title":"Light (Stoneface & Terminal Dub Remix)", "time":"6:36", "url":"http://m...content-available-to-author-only...o.net/getsong/39661642282135"}, {"artist":"Shogun feat. Emma Lock", "title":"Save Me (Stoneface & Terminal Vocal Mix)", "time":"8:51", "url":"http://m...content-available-to-author-only...o.net/getsong/72160898405493"}, {"artist":"Marcus Schossow & Reeves feat. Emma Hewitt", "title":"Light (Stoneface & Terminal Vocal Remix)", "time":"6:57", "url":"http://m...content-available-to-author-only...o.net/getsong/39661639124116"}, {"artist":"Cosmic Gate", "title":"Sometimes They Come Back for More (Stoneface & Terminal Remix)", "time":"7:42", "url":"http://m...content-available-to-author-only...o.net/getsong/40093022577894"}, {"artist":"Emma Stone", "title":"Audition (The Fools Who Dream)", "time":"3:48", "url":"http://m...content-available-to-author-only...o.net/getsong/123000851829065"}, {"artist":"Emma Stone", "title":"ВЕРНУТЬ ВСЁ НАЗАД", "time":"4:29", "url":"http://m...content-available-to-author-only...o.net/getsong/64228794990888"}, {"artist":"Emma Stone", "title":"Knock on wood", "time":"1:29", "url":"http://m...content-available-to-author-only...o.net/getsong/49766552949085"}, {"artist":"Emma Stone", "title":"Audition (The Fools Who Dream)", "time":"3:48", "url":"http://m...content-available-to-author-only...o.net/getsong/123005982970297"}, {"artist":"Emma Stone", "title":"ВО СНАХ", "time":"6:01", "url":"http://m...content-available-to-author-only...o.net/getsong/64229208625569"}, {"artist":"Emma Stone", "title":"City Of Stars", "time":"2:29", "url":"http://m...content-available-to-author-only...o.net/getsong/123006871019938"}, {"artist":"Armin van Buuren", "title":"Stone Cold [Asot Radio Classic]", "time":"6:04", "url":"http://m...content-available-to-author-only...o.net/getsong/66306144887910"}]');
$search = "Emma Stone";
function reorder(&$m) {
global $words, $search;
for ($i = 0; $i < count($m); $i++) { if (preg_match('/^'.$search.'(\\s|$)/', $m[$i]->artist) || preg_match('/^'.$search.'(\\s|$)/', $m[$i]->title)) $m[$i]->rel = 1; else if (preg_match('/\\s'.$search.'(\\s|$)/', $m[$i]->artist) || preg_match('/\\s'.$search.'(\\s|$)/', $m[$i]->title)) $m[$i]->rel = 0.8;
else {
for ($j = 0; $j < count($words); $j++) { if (preg_match('/(^|\\s)'.$words[$j].'(\\s|$)/', $m[$i]->artist) && preg_match('/(^|\\s)'.$words[$j].'(\\s|$)/', $m[$i]->title)) { $m[$i]->rel = 0.7;
break;
}
if (preg_match('/(^|\\s)'.$words[$j].'(\\s|$)/', $m[$i]->artist) || preg_match('/(^|\\s)'.$words[$j].'(\\s|$)/', $m[$i]->title)) { $m[$i]->rel = 0.6;
break;
}
}
}
if (!isset($m[$i]->rel)) $m[$i]->rel = 0.4; }
usort($m, function($a, $b) { if ($a->rel == $b->rel) return 0;
return $a->rel < $b->rel ? 1 : -1;
});
}
reorder($data);
?>
PD9waHAKCiAgICRkYXRhID0ganNvbl9kZWNvZGUoJ1t7ImFydGlzdCI6IkxlZSBGaWVsZHMgJiBUaGUgRXhwcmVzc2lvbnMiLCAidGl0bGUiOiJTdG9uZSBBbmdlbCAoSW5zdHJ1bWVudGFsKSIsICJ0aW1lIjoiNTowOSIsICJ1cmwiOiJodHRwOi8vbS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uby5uZXQvZ2V0c29uZy8xMjI5NjkxMjU5MDg3NTkifSwgeyJhcnRpc3QiOiJKdXN0aW4gSHVyd2l0eiwgUnlhbiBHb3NsaW5nICYgRW1tYSBTdG9uZSIsICJ0aXRsZSI6IkNpdHkgT2YgU3RhcnMgLyBNYXkgRmluYWxseSBDb21lIFRydWUiLCAidGltZSI6IjQ6MTciLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvMTIzMDA1MDYyMDQxOTczIn0sIHsiYXJ0aXN0IjoiTGVlIEZpZWxkcyAmIFRoZSBFeHByZXNzaW9ucyIsICJ0aXRsZSI6IlN0b25lIEFuZ2VsIiwgInRpbWUiOiI1OjA5IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzEyMjk3MDc5ODk0MDU3NCJ9LCB7ImFydGlzdCI6IlJ5YW4gR29zbGluZyAmIEVtbWEgU3RvbmUiLCAidGl0bGUiOiJBIExvdmVseSBOaWdodCIsICJ0aW1lIjoiMzo1NiIsICJ1cmwiOiJodHRwOi8vbS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uby5uZXQvZ2V0c29uZy8xMjMwMDc4MTI4ODcwMDYifSwgeyJhcnRpc3QiOiJSeWFuIEdvc2xpbmcsIEVtbWEgU3RvbmUiLCAidGl0bGUiOiJBIExvdmVseSBOaWdodCIsICJ0aW1lIjoiMzo1NiIsICJ1cmwiOiJodHRwOi8vbS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uby5uZXQvZ2V0c29uZy8xMjMwMDU5ODMzOTIwMzIifSwgeyJhcnRpc3QiOiJSeWFuIEdvc2xpbmcgZmVhdC4gRW1tYSBTdG9uZSIsICJ0aXRsZSI6IkNpdHkgb2YgU3RhcnMiLCAidGltZSI6IjI6MjkiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvMTIzMDA3ODEyOTQ0MzY0In0sIHsiYXJ0aXN0IjoiTGVlIEZpZWxkcyIsICJ0aXRsZSI6IlN0b25lIEFuZ2VsIiwgInRpbWUiOiI1OjA4IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzc2ODgxODMzNzIyMTY4In0sIHsiYXJ0aXN0IjoiSnVzdGluIEh1cndpdHoiLCAidGl0bGUiOiJDaXR5IG9mIFN0YXJzIChIdW1taW5nKSBbZmVhdC4gRW1tYSBTdG9uZV0iLCAidGltZSI6IjI6NDMiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvMTIzMDA1MDYxOTQ3NzQyIn0sIHsiYXJ0aXN0IjoiU2hvZ3VuIEZlYXQuIEVtbWEgTG9jayIsICJ0aXRsZSI6IlNhdmUgTWUgKFN0b25lZmFjZSAmIFRlcm1pbmFsIFZvY2FsIE1peCkiLCAidGltZSI6IjY6MjUiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvMTIyODk0NDM0MDM4MTExIn0sIHsiYXJ0aXN0IjoiU2hvZ3VuIGZlYXQuIEVtbWEgTG9jayIsICJ0aXRsZSI6IlNhdmUgTWUgKFN0b25lZmFjZSAmIFRlcm1pbmFsIHZvY2FsIG1peCkiLCAidGltZSI6Ijg6NTEiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvNDgyODg5NTEzNDU1NzgifSwgeyJhcnRpc3QiOiJIZXVzZSIsICJ0aXRsZSI6IlN0b25lcyAoZmVhdC4gQ2hyaXMgTGludG9uICYgRW1tYSBTYW1ldGgpIiwgInRpbWUiOiIyOjU1IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzEyMzAwNjAxMDgyMjk4NSJ9LCB7ImFydGlzdCI6IkVtbWEgRGVpZ21hbiIsICJ0aXRsZSI6IlRlbGwgWW91ciBNYW1hIFN0b25lYnJpZGdlIENsdWIgUmVtaXgiLCAidGltZSI6Ijc6MjEiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvNzM3OTEzMDY2Nzg3NzIifSwgeyJhcnRpc3QiOiJFbW1hIFN0b25lL1J5YW4gR29zbGluZyIsICJ0aXRsZSI6IkEgTG92ZWx5IE5pZ2h0IiwgInRpbWUiOiIzOjU3IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzEyMzAwMDg1NDQ0MjQzOSJ9LCB7ImFydGlzdCI6IkVtbWEgU3RvbmUsIENhbGxpZSBIZXJuYW5kZXosIFNvbm95YSBNaXp1bm8sIEplc3NpY2EgUm90aGUiLCAidGl0bGUiOiJTb21lb25lIGluIHRoZSBDcm93ZCIsICJ0aW1lIjoiNDoxOSIsICJ1cmwiOiJodHRwOi8vbS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uby5uZXQvZ2V0c29uZy8xMjMwMDU5ODMyNTI5OTAifSwgeyJhcnRpc3QiOiJFbW1hIFN0b25lIiwgInRpdGxlIjoiU29tZW9uZSBJbiBUaGUgQ3Jvd2QiLCAidGltZSI6IjQ6MTkiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvMTIzMDA2MTgwMDIwNjQ1In0sIHsiYXJ0aXN0IjoiQ29zbWljIEdhdGUiLCAidGl0bGUiOiJMb25kb24gUmFpbiAoU3RvbmVmYWNlICYgVGVybWluYWwgUmVtaXgpIiwgInRpbWUiOiI3OjQ3IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzM5NTUwNTIzNDkxNDQ0In0sIHsiYXJ0aXN0IjoiQ29zbWljIEdhdGUiLCAidGl0bGUiOiJMb25kb24gUmFpbiAoUnViZW4gRGUgUm9uZGUgUmVtaXgpIiwgInRpbWUiOiIzOjA4IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzEyMjg4MDA5MDQ2MTI1MyJ9LCB7ImFydGlzdCI6IkNvc21pYyBHYXRlIiwgInRpdGxlIjoiTG9uZG9uIFJhaW4gKFN0b25lZmFjZSBBbmQgVGVybWluYWwgUmVtaXgpIiwgInRpbWUiOiI3OjQ3IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzEyMjg4MDA5MDQ2NTM1MCJ9LCB7ImFydGlzdCI6Ik1hcmN1cyBTY2hvc3NvdyAmIFJlZXZlcyBmZWF0LiBFbW1hIEhld2l0dCIsICJ0aXRsZSI6IkxpZ2h0IChTdG9uZWZhY2UgJiBUZXJtaW5hbCBEdWIgUmVtaXgpIiwgInRpbWUiOiI2OjM2IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzM5NjYxNjQyMjgyMTM1In0sIHsiYXJ0aXN0IjoiU2hvZ3VuIGZlYXQuIEVtbWEgTG9jayIsICJ0aXRsZSI6IlNhdmUgTWUgKFN0b25lZmFjZSAmIFRlcm1pbmFsIFZvY2FsIE1peCkiLCAidGltZSI6Ijg6NTEiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvNzIxNjA4OTg0MDU0OTMifSwgeyJhcnRpc3QiOiJNYXJjdXMgU2Nob3Nzb3cgJiBSZWV2ZXMgZmVhdC4gRW1tYSBIZXdpdHQiLCAidGl0bGUiOiJMaWdodCAoU3RvbmVmYWNlICYgVGVybWluYWwgVm9jYWwgUmVtaXgpIiwgInRpbWUiOiI2OjU3IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzM5NjYxNjM5MTI0MTE2In0sIHsiYXJ0aXN0IjoiQ29zbWljIEdhdGUiLCAidGl0bGUiOiJTb21ldGltZXMgVGhleSBDb21lIEJhY2sgZm9yIE1vcmUgKFN0b25lZmFjZSAmIFRlcm1pbmFsIFJlbWl4KSIsICJ0aW1lIjoiNzo0MiIsICJ1cmwiOiJodHRwOi8vbS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uby5uZXQvZ2V0c29uZy80MDA5MzAyMjU3Nzg5NCJ9LCB7ImFydGlzdCI6IkVtbWEgU3RvbmUiLCAidGl0bGUiOiJBdWRpdGlvbiAoVGhlIEZvb2xzIFdobyBEcmVhbSkiLCAidGltZSI6IjM6NDgiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvMTIzMDAwODUxODI5MDY1In0sIHsiYXJ0aXN0IjoiRW1tYSBTdG9uZSIsICJ0aXRsZSI6ItCS0JXQoNCd0KPQotCsINCS0KHQgSDQndCQ0JfQkNCUIiwgInRpbWUiOiI0OjI5IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzY0MjI4Nzk0OTkwODg4In0sIHsiYXJ0aXN0IjoiRW1tYSBTdG9uZSIsICJ0aXRsZSI6Iktub2NrIG9uIHdvb2QiLCAidGltZSI6IjE6MjkiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvNDk3NjY1NTI5NDkwODUifSwgeyJhcnRpc3QiOiJFbW1hIFN0b25lIiwgInRpdGxlIjoiQXVkaXRpb24gKFRoZSBGb29scyBXaG8gRHJlYW0pIiwgInRpbWUiOiIzOjQ4IiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzEyMzAwNTk4Mjk3MDI5NyJ9LCB7ImFydGlzdCI6IkVtbWEgU3RvbmUiLCAidGl0bGUiOiLQktCeINCh0J3QkNClIiwgInRpbWUiOiI2OjAxIiwgInVybCI6Imh0dHA6Ly9tLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5vLm5ldC9nZXRzb25nLzY0MjI5MjA4NjI1NTY5In0sIHsiYXJ0aXN0IjoiRW1tYSBTdG9uZSIsICJ0aXRsZSI6IkNpdHkgT2YgU3RhcnMiLCAidGltZSI6IjI6MjkiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvMTIzMDA2ODcxMDE5OTM4In0sIHsiYXJ0aXN0IjoiQXJtaW4gdmFuIEJ1dXJlbiIsICJ0aXRsZSI6IlN0b25lIENvbGQgW0Fzb3QgUmFkaW8gQ2xhc3NpY10iLCAidGltZSI6IjY6MDQiLCAidXJsIjoiaHR0cDovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLm8ubmV0L2dldHNvbmcvNjYzMDYxNDQ4ODc5MTAifV0nKTsKCiAgICRzZWFyY2ggPSAiRW1tYSBTdG9uZSI7CiAgICR3b3JkcyA9IGV4cGxvZGUoIiAiLCAkc2VhcmNoKTsKCiAgIGZ1bmN0aW9uIHJlb3JkZXIoJiRtKSB7CiAgICAgIGdsb2JhbCAkd29yZHMsICRzZWFyY2g7CiAgICAgIGZvciAoJGkgPSAwOyAkaSA8IGNvdW50KCRtKTsgJGkrKykgewogICAgICAgICBpZiAocHJlZ19tYXRjaCgnL14nLiRzZWFyY2guJyhcXHN8JCkvJywgJG1bJGldLT5hcnRpc3QpIHx8IHByZWdfbWF0Y2goJy9eJy4kc2VhcmNoLicoXFxzfCQpLycsICRtWyRpXS0+dGl0bGUpKSAkbVskaV0tPnJlbCA9IDE7CiAgICAgICAgIGVsc2UgaWYgKHByZWdfbWF0Y2goJy9cXHMnLiRzZWFyY2guJyhcXHN8JCkvJywgJG1bJGldLT5hcnRpc3QpIHx8IHByZWdfbWF0Y2goJy9cXHMnLiRzZWFyY2guJyhcXHN8JCkvJywgJG1bJGldLT50aXRsZSkpICRtWyRpXS0+cmVsID0gMC44OwoKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIGZvciAoJGogPSAwOyAkaiA8IGNvdW50KCR3b3Jkcyk7ICRqKyspIHsKICAgICAgICAgICAgICAgaWYgKHByZWdfbWF0Y2goJy8oXnxcXHMpJy4kd29yZHNbJGpdLicoXFxzfCQpLycsICRtWyRpXS0+YXJ0aXN0KSAmJiBwcmVnX21hdGNoKCcvKF58XFxzKScuJHdvcmRzWyRqXS4nKFxcc3wkKS8nLCAkbVskaV0tPnRpdGxlKSkgewogICAgICAgICAgICAgICAgICAkbVskaV0tPnJlbCA9IDAuNzsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgaWYgKHByZWdfbWF0Y2goJy8oXnxcXHMpJy4kd29yZHNbJGpdLicoXFxzfCQpLycsICRtWyRpXS0+YXJ0aXN0KSB8fCBwcmVnX21hdGNoKCcvKF58XFxzKScuJHdvcmRzWyRqXS4nKFxcc3wkKS8nLCAkbVskaV0tPnRpdGxlKSkgewogICAgICAgICAgICAgICAgICAkbVskaV0tPnJlbCA9IDAuNjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICB9CgogICAgICAgICBpZiAoIWlzc2V0KCRtWyRpXS0+cmVsKSkgJG1bJGldLT5yZWwgPSAwLjQ7CiAgICAgIH0KCiAgICAgIHVzb3J0KCRtLCBmdW5jdGlvbigkYSwgJGIpIHsKICAgICAgCSBpZiAoJGEtPnJlbCA9PSAkYi0+cmVsKSByZXR1cm4gMDsKICAgICAgICAgcmV0dXJuICRhLT5yZWwgPCAkYi0+cmVsID8gMSA6IC0xOwogICAgICB9KTsKICAgfQoKICAgcmVvcmRlcigkZGF0YSk7CiAgIHByaW50X3IoJGRhdGEpOwoKPz4=