Compute a line flow given a goal, starting points, and obstacles defined on a surface.
ewogICAgIl9fY29va2Jvb2tNZXRhIjogewogICAgICAgICJjb250ZXh0IjogInNvcCIsCiAgICAgICAgInZlcnNpb24iOiAiMjAuNS41ODQiCiAgICB9LAogICAgImF0dHJpYmJsdXIiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY3JlYXRlX2V4Y2x1ZGVfZ3JvdXAiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJhdHRyaWJ1dGVzIjogImdvYWwiLAogICAgICAgICAgICAiZ3JvdXAiOiAiIWV4Y2x1ZGUiLAogICAgICAgICAgICAiaXRlcmF0aW9ucyI6IDg5CiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDIuNTksCiAgICAgICAgICAgIDAuOTcKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYmJsdXIiCiAgICB9LAogICAgImNvbXB1dGVfZ3JhZGllbnQiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiYXR0cmliYmx1ciIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAwCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImF0dHJpYm5hbWUiOiAiZ3JhZGllbnQiLAogICAgICAgICAgICAiY29sb3JyYW1wIjogWwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMCwKICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiBbCiAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAgICAgICAgIDEKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICJpbnRlcnAiOiAibGluZWFyIiwKICAgICAgICAgICAgICAgICAgICAicG9zIjogMC41LAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgMQogICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgImludGVycCI6ICJsaW5lYXIiLAogICAgICAgICAgICAgICAgICAgICJwb3MiOiAxLAogICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IFsKICAgICAgICAgICAgICAgICAgICAgICAgMSwKICAgICAgICAgICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgICAgICAgICAgMAogICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgXSwKICAgICAgICAgICAgImdyb3VwdHlwZSI6ICJwb2ludHMiLAogICAgICAgICAgICAibWVhc3VyZSI6ICJncmFkaWVudCIsCiAgICAgICAgICAgICJzcmNhdHRyaWIiOiAiZ29hbCIsCiAgICAgICAgICAgICJzcmNjb21wIjogInh5eiIsCiAgICAgICAgICAgICJ0b3RhbGF0dHJpYm5hbWUiOiAidG90YWxncmFkaWVudCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMi41OSwKICAgICAgICAgICAgMAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibWVhc3VyZTo6Mi4wIgogICAgfSwKICAgICJjcmVhdGVfZGVsZXRlX2dyb3VwIjogewogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImhpZ2hsaWdodCI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImNvbXB1dGVfZ3JhZGllbnQiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzcGhlcmU0IiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYm91bmR0eXBlIjogInVzZWJvYmplY3QiLAogICAgICAgICAgICAiZ3JvdXBib3VuZGluZyI6IHRydWUsCiAgICAgICAgICAgICJncm91cG5hbWUiOiAiZGVsZXRlIiwKICAgICAgICAgICAgImdyb3VwdHlwZSI6ICJwb2ludCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS4wOCwKICAgICAgICAgICAgLTIuMDkKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImdyb3VwY3JlYXRlIgogICAgfSwKICAgICJjcmVhdGVfZXhjbHVkZV9ncm91cCI6IHsKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJoaWdobGlnaHQiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzZXRfZ29hbF93ZWlnaHQiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJzcGhlcmUzIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDEKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYm91bmR0eXBlIjogInVzZWJvYmplY3QiLAogICAgICAgICAgICAiZ3JvdXBib3VuZGluZyI6IHRydWUsCiAgICAgICAgICAgICJncm91cG5hbWUiOiAiZXhjbHVkZSIsCiAgICAgICAgICAgICJncm91cHR5cGUiOiAicG9pbnQiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDIuNTksCiAgICAgICAgICAgIDIKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImdyb3VwY3JlYXRlIgogICAgfSwKICAgICJjcmVhdGVfZ29hbF9ncm91cCI6IHsKICAgICAgICAiZmxhZ3MiOiB7CiAgICAgICAgICAgICJoaWdobGlnaHQiOiB0cnVlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJub3JtYWwxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAic3BoZXJlMiIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgImJvdW5kdHlwZSI6ICJ1c2Vib2JqZWN0IiwKICAgICAgICAgICAgImdyb3VwYm91bmRpbmciOiB0cnVlLAogICAgICAgICAgICAiZ3JvdXBuYW1lIjogImdvYWwiLAogICAgICAgICAgICAiZ3JvdXB0eXBlIjogInBvaW50IgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAyLjU5LAogICAgICAgICAgICA0LjA4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJncm91cGNyZWF0ZSIKICAgIH0sCiAgICAiZGVsZXRlMSI6IHsKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJjcmVhdGVfZGVsZXRlX2dyb3VwIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiZW50aXR5IjogInBvaW50IiwKICAgICAgICAgICAgImdyb3VwIjogImRlbGV0ZSIsCiAgICAgICAgICAgICJuZWdhdGUiOiAia2VlcCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMS4wOCwKICAgICAgICAgICAgLTIuOTUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImRlbGV0ZSIKICAgIH0sCiAgICAiZm9yZWFjaF9iZWdpbjEiOiB7CiAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAwLjc1LAogICAgICAgICAgICAwLjQsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImNvbG9yZGVmYXVsdCI6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICAiaW5wdXRzIjogWwogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiZnJvbSI6ICJkZWxldGUxIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfQogICAgICAgIF0sCiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAiYmxvY2twYXRoIjogIi4uL2ZvcmVhY2hfZW5kMSIsCiAgICAgICAgICAgICJtZXRob2QiOiAicGllY2UiCiAgICAgICAgfSwKICAgICAgICAicG9zaXRpb24iOiBbCiAgICAgICAgICAgIDEuMDgsCiAgICAgICAgICAgIC00LjUKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImJsb2NrX2JlZ2luIgogICAgfSwKICAgICJmb3JlYWNoX2JlZ2luMV9tZXRhZGF0YTEiOiB7CiAgICAgICAgImNvbG9yIjogWwogICAgICAgICAgICAwLjc1LAogICAgICAgICAgICAwLjQsCiAgICAgICAgICAgIDAKICAgICAgICBdLAogICAgICAgICJmbGFncyI6IHsKICAgICAgICAgICAgImNvbG9yZGVmYXVsdCI6IGZhbHNlCiAgICAgICAgfSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJibG9ja3BhdGgiOiAiLi4vZm9yZWFjaF9lbmQxIiwKICAgICAgICAgICAgIm1ldGhvZCI6ICJtZXRhZGF0YSIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgNC4wOCwKICAgICAgICAgICAgLTQuNQogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYmxvY2tfYmVnaW4iCiAgICB9LAogICAgImZvcmVhY2hfZW5kMSI6IHsKICAgICAgICAiY29sb3IiOiBbCiAgICAgICAgICAgIDAuNzUsCiAgICAgICAgICAgIDAuNCwKICAgICAgICAgICAgMAogICAgICAgIF0sCiAgICAgICAgImZsYWdzIjogewogICAgICAgICAgICAiY29sb3JkZWZhdWx0IjogZmFsc2UsCiAgICAgICAgICAgICJkaXNwbGF5IjogdHJ1ZSwKICAgICAgICAgICAgInJlbmRlciI6IHRydWUKICAgICAgICB9LAogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInN0ZXBfYWxvbmdfZ3JhZGllbnQiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJibG9ja3BhdGgiOiAiLi4vZm9yZWFjaF9iZWdpbjEiLAogICAgICAgICAgICAiaXRlcm1ldGhvZCI6ICJwaWVjZXMiLAogICAgICAgICAgICAibWV0aG9kIjogIm1lcmdlIiwKICAgICAgICAgICAgInRlbXBsYXRlcGF0aCI6ICIuLi9mb3JlYWNoX2JlZ2luMSIsCiAgICAgICAgICAgICJ1c2VhdHRyaWIiOiBmYWxzZQogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICAyLjc2LAogICAgICAgICAgICAtNy4xOAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYmxvY2tfZW5kIgogICAgfSwKICAgICJub3JtYWwxIjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogInNwaGVyZTEiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJ0eXBlIjogInR5cGVwb2ludCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMi41OSwKICAgICAgICAgICAgNS4wOAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAibm9ybWFsIgogICAgfSwKICAgICJzZXRfZ29hbF93ZWlnaHQiOiB7CiAgICAgICAgImlucHV0cyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY3JlYXRlX2dvYWxfZ3JvdXAiLAogICAgICAgICAgICAgICAgImZyb21faW5kZXgiOiAwLAogICAgICAgICAgICAgICAgInRvX2luZGV4IjogMAogICAgICAgICAgICB9CiAgICAgICAgXSwKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJncm91cCI6ICJnb2FsIiwKICAgICAgICAgICAgInNuaXBwZXQiOiAiZkBnb2FsID0gMS4wOyIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMi41OSwKICAgICAgICAgICAgMy4wNAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAiYXR0cmlid3JhbmdsZSIKICAgIH0sCiAgICAic3BoZXJlMSI6IHsKICAgICAgICAicGFybXMiOiB7CiAgICAgICAgICAgICJjb2xzIjogNTAsCiAgICAgICAgICAgICJyYWQiOiBbCiAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAwLjUsCiAgICAgICAgICAgICAgICAwLjUKICAgICAgICAgICAgXSwKICAgICAgICAgICAgInJvd3MiOiA1MCwKICAgICAgICAgICAgInNjYWxlIjogMi4xLAogICAgICAgICAgICAidHlwZSI6ICJwb2x5bWVzaCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMi41OSwKICAgICAgICAgICAgNi4wOAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic3BoZXJlIgogICAgfSwKICAgICJzcGhlcmUyIjogewogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgInJhZCI6IFsKICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgIDAuNSwKICAgICAgICAgICAgICAgIDAuNQogICAgICAgICAgICBdLAogICAgICAgICAgICAicm93cyI6IDI1LAogICAgICAgICAgICAic2NhbGUiOiAxLjEsCiAgICAgICAgICAgICJ0IjogWwogICAgICAgICAgICAgICAgMCwKICAgICAgICAgICAgICAgIDEuMjUsCiAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ0eXBlIjogInBvbHltZXNoIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA0LjQ5LAogICAgICAgICAgICA1LjE4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGhlcmUiCiAgICB9LAogICAgInNwaGVyZTMiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicmFkIjogWwogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJzY2FsZSI6IDAuNDEsCiAgICAgICAgICAgICJ0IjogWwogICAgICAgICAgICAgICAgMS4wNCwKICAgICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgICAwCiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJ0eXBlIjogInBvbHltZXNoIgogICAgICAgIH0sCiAgICAgICAgInBvc2l0aW9uIjogWwogICAgICAgICAgICA2LjM1LAogICAgICAgICAgICA0LjA4CiAgICAgICAgXSwKICAgICAgICAidHlwZSI6ICJzcGhlcmUiCiAgICB9LAogICAgInNwaGVyZTQiOiB7CiAgICAgICAgInBhcm1zIjogewogICAgICAgICAgICAicmFkIjogWwogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41LAogICAgICAgICAgICAgICAgMC41CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgICJzY2FsZSI6IDAuNDEsCiAgICAgICAgICAgICJ0IjogWwogICAgICAgICAgICAgICAgMC4zOCwKICAgICAgICAgICAgICAgIC0wLjgzLAogICAgICAgICAgICAgICAgMAogICAgICAgICAgICBdLAogICAgICAgICAgICAidHlwZSI6ICJwb2x5bWVzaCIKICAgICAgICB9LAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMCwKICAgICAgICAgICAgMAogICAgICAgIF0sCiAgICAgICAgInR5cGUiOiAic3BoZXJlIgogICAgfSwKICAgICJzdGVwX2Fsb25nX2dyYWRpZW50IjogewogICAgICAgICJpbnB1dHMiOiBbCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImZvcmVhY2hfYmVnaW4xIiwKICAgICAgICAgICAgICAgICJmcm9tX2luZGV4IjogMCwKICAgICAgICAgICAgICAgICJ0b19pbmRleCI6IDAKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImZyb20iOiAiY29tcHV0ZV9ncmFkaWVudCIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAxCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmcm9tIjogImZvcmVhY2hfYmVnaW4xX21ldGFkYXRhMSIsCiAgICAgICAgICAgICAgICAiZnJvbV9pbmRleCI6IDAsCiAgICAgICAgICAgICAgICAidG9faW5kZXgiOiAyCiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwYXJtcyI6IHsKICAgICAgICAgICAgIm5vaXNlX2Ftb3VudCI6IDAuMjczLAogICAgICAgICAgICAibm9pc2VfZnJlcSI6IDIsCiAgICAgICAgICAgICJudW1fc3RlcHMiOiA5MiwKICAgICAgICAgICAgInNuaXBwZXQiOiAiaW50IHByaW1udW0gPSBhZGRwcmltKDAsIFwicG9seWxpbmVcIik7XG5hZGR2ZXJ0ZXgoMCwgcHJpbW51bSwgQHB0bnVtKTtcbmludCBpdGVyYXRpb24gPSBkZXRhaWwoMiwgXCJpdGVyYXRpb25cIiwgMCk7XG5cbnZlY3RvciBjdXJQb3MgPSB2QFA7XG5cbmZvcihpbnQgaSA9IDA7IGlcdTAwM2NjaGkoXCJudW1fc3RlcHNcIik7IGkrKyl7XG4gICAgaW50IHByaW07XG4gICAgdmVjdG9yIHV2OyBcbiAgICBcbiAgICBmbG9hdCBkID0geHl6ZGlzdCgxLCBjdXJQb3MsIHByaW0sIHV2KTtcbiAgICBcbiAgICB2ZWN0b3IgZ3JhZGllbnQgPSBub3JtYWxpemUocHJpbXV2KDEsIFwiZ3JhZGllbnRcIiwgcHJpbSwgdXYpKTtcbiAgICBncmFkaWVudCArPSBjaGYoXCJub2lzZV9hbW91bnRcIikqY3VybG5vaXNlKGNoZihcIm5vaXNlX2ZyZXFcIikqY3VyUG9zICsgY2hmKFwic3RyYW5kX25vaXNlX2Ftb3VudFwiKSppdGVyYXRpb24pO1xuICAgIFxuICAgIHZlY3RvciBuZXh0UG9zID0gY3VyUG9zICsgY2hmKFwic3RlcF9zaXplXCIpKm5vcm1hbGl6ZShncmFkaWVudCk7XG4gICAgXG4gICAgZCA9IHh5emRpc3QoMSwgbmV4dFBvcywgcHJpbSwgdXYpO1xuICAgIGN1clBvcyA9IHByaW11digxLCBcIlBcIiwgcHJpbSwgdXYpO1xuXG4gICAgaW50IHBvaW50MiA9IGFkZHBvaW50KDAsIGN1clBvcyk7XG4gICAgYWRkdmVydGV4KDAsIHByaW1udW0sIHBvaW50Mik7XG59IiwKICAgICAgICAgICAgInN0ZXBfc2l6ZSI6IDAuMDI2LAogICAgICAgICAgICAic3RyYW5kX25vaXNlX2Ftb3VudCI6IDAuMDc5CiAgICAgICAgfSwKICAgICAgICAicGFybXRlbXBsYXRlcyI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImluc2VydF9hZnRlciI6ICJ2ZXhfdGhyZWFkam9ic2l6ZSIsCiAgICAgICAgICAgICAgICAicGFybXRlbXBsYXRlcyI6IHsKICAgICAgICAgICAgICAgICAgICAiZm9sZGVyX2dlbmVyYXRlZHBhcm1zX3NuaXBwZXQiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJHZW5lcmF0ZWQgQ2hhbm5lbCBQYXJhbWV0ZXJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgInBhcm10ZW1wbGF0ZXMiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAibm9pc2VfYW1vdW50IjogewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYWJlbCI6ICJOb2lzZSBBbW91bnQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vaXNlX2ZyZXEiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIk5vaXNlIEZyZXEiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXhfdmFsdWUiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRfY2FsbGJhY2tfbGFuZ3VhZ2UiOiAiaHNjcmlwdCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZmxvYXQiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm51bV9zdGVwcyI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiTnVtIFN0ZXBzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWVudV90eXBlIjogIm5vcm1hbCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJpbnRlZ2VyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdGVwX3NpemUiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhYmVsIjogIlN0ZXAgU2l6ZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyYW5kX25vaXNlX2Ftb3VudCI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFiZWwiOiAiU3RyYW5kIE5vaXNlIEFtb3VudCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heF92YWx1ZSI6IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHlwZSI6ICJmbG9hdCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInNjcmlwdF9jYWxsYmFja19sYW5ndWFnZSI6ICJoc2NyaXB0IiwKICAgICAgICAgICAgICAgICAgICAgICAgInRhZ3MiOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZ3JvdXBfdHlwZSI6ICJzaW1wbGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgInNpZGVmeDo6bG9vayI6ICJibGFuayIKICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgInR5cGUiOiAiZm9sZGVyX3NpbXBsZSIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICBdLAogICAgICAgICJwb3NpdGlvbiI6IFsKICAgICAgICAgICAgMi43NiwKICAgICAgICAgICAgLTYuMDEKICAgICAgICBdLAogICAgICAgICJ0eXBlIjogImF0dHJpYndyYW5nbGUiCiAgICB9Cn0=