Назначение

Создание макетов печати чеков/пречеков

Макет создается в статусе черновика и его надо активировать вручную

PluggetSystemTypeRKRef
ФОРМАТ ЗАПРОСА

Формат запроса

Запрос

{
  "taskType": "CreateMaket",
  "params": {
    "sync": {
      "objectId": number,
       "timeout": number
    },
    "guid": "guid",
    "name": "string",
    "altName": "string"
    "groupId": nubmer
    "width": number,
    "slip": boolean,
    "fiscRegFlags": "string",
    "maket": "string"
   }
}
CODE
ПараметрТипОбязательныйОписаниеЗначение по умолчанию
taskTypestringдаТип задачи
sync

Синхронный вызов метода (либо синхронный, либо асинхронный. Для этого изменить на "async") 
  • objectId
intдаКод ресторана в системе лицензирования
  • timeout
int-Время ожидания ответа в секундах120 секунд
guidguidдаGuid нового макета
namestringдаНаименование макета (макс 40 символов)
altNamestring-Наименование на альтернативном языке (макс 40 символов)
groupIduintдаID Группы, в которой создается макет (из основных: 1 - чек, 2 - пречек)
widthuintдаШирина макета в символах
slipbool-Флаг Слиповыйfalse
fiscRegFlagsstring-

Фискальные опции, перечисленные в квадратных скобках и разделителем "," 

набор из возможных значений:

  • frpSummaryOnly - только сумму
  • frpSeparateDiscount - выделять скидки
  • frpUseTaxDishType - печатать налоги
  • frpPrintChange - печатать сдачу
  • frpPrintDish0Price - печатать блюда с 0-ценой
  • frpUseAltNames - исп. альтернативное имя
  • frpAdvance - Аванс
  • frpTRAINING - тренировка
  • frpVoided - печатать удаленные блюда

Пример:

[frpPrintChange,frpAdvance,frpUseTaxDishType,frpSeparateDiscount]

[]
maketbase64 stringдаШаблон макета в base64
ФОРМАТ ОТВЕТА

Формат ответа

Успешный ответ

Успешный ответ

{
    "taskResponse": {
        "isOk": true,
        "maket": {
            "name": "string",
            "status": "string"
        }
    },
    "responseCommon": {
        "taskGuid": "58cc115d-86ca-41ec-aea4-140aa7095bad",
        "taskType": "CreateMaket",
        "objectId": 199990246,
        "agentGuid": "d564619a-50c3-3d87-0816-de67ed9c8e18"
    }
}
CODE

Ответ с ошибкой при создании

Ответ с ошибкой при создании

{
    "taskResponse": {
        "isOk": false,
        "error": "Макет Guid = {guid} уже существует",
        "maket": {
            "name": "string",
            "status": "string"
        }    
    },
    "responseCommon": {
        "taskGuid": "075874bb-0e07-42f8-9aa1-51e49318afa0",
        "taskType": "CreateMaket",
        "objectId": 199990246,
        "agentGuid": "d564619a-50c3-3d87-0816-de67ed9c8e18"
    }
}
CODE

Ответ с ошибкой. Ошибка агента или сервера

Ответ с ошибкой. Ошибка агента или сервера

{
  "responseCommon": {
    "taskGuid": "string",
    "taskType": "CreateMaket",
    "objectId": 0
  },
  "error": {
    "wsError": {
      "code": "string",
      "desc": "string"
    },
    "agentError": {
      "code": "string",
      "desc": "string"
    }
  }
}
CODE
ПараметрТипОписание
responseCommonobjectИнформация по задаче
  • taskGuid
guidУникальный код этой задачи используется при получении задачи через очередь
  • taskType
stringТип задачи
  • objectId
intКод ресторана в системе лицензирования
taskResponseobject
  • isOk
boolМакет создан или нет 
  • maket
objectСозданный макет
    • name
stringНаименование макета
    • status
stringСтатус макета в r_keeper
errorobjectКонтейнер ошибок, см Описание ошибок
wsError
Ошибка от сервера
agentError
Ошибка от агента
ПРИМЕРЫ СТРУКТУРЫ ЗАПРОСОВ

Примеры структуры запросов

{
    "taskType": "CreateMaket",
    "params": {
        "sync": {
            "objectId": 199996011,
            "timeout": 120
        },
        "guid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "name": "Тест api 40",
        "altName": "Alter api 40",
        "groupId": 1, // 1 - чек, 2 - пречек
        "width": 40,
        "maket": "b2JqZWN0IFJlcG9ydDE6IFRQRFJlcG9ydAogIEVuZ2luZVZlciA9IDEKICBXaWR0aCA9IDQwCiAgSVZhcnMgPSA8PgogIFVuaW9uVGFibGVzID0gPD4KICBSZXBQYXJhbXMgPSA8PgogIEZpeGVkSGVpZ2h0ID0gMAogIFR3b1Bhc3NlcyA9IEZhbHNlCiAgb2JqZWN0IERvY3VtZW50MTogVFBERG9jdW1lbnQKICAgIEhlaWdodCA9IDYwCiAgICBvYmplY3QgQmFuZFJlcFRpdGxlOiBUUERCYW5kCiAgICAgIENvbG9yID0gMTM3MzU1NzQKICAgICAgVG9wID0gMQogICAgICBIZWlnaHQgPSAyCiAgICAgIEhlYWRlci5TaXplID0gMgogICAgICBCb2R5LlNpemUgPSAwCiAgICAgIEZvb3Rlci5TaXplID0gMAogICAgICBCYW5kVHlwZSA9IGJ0UmVwb3J0VGl0bGUKICAgICAgQ2FsY0ZpZWxkcyA9IDw+CiAgICAgIG9iamVjdCBNZW1vMTogVFBETWVtbwogICAgICAgIExlZnQgPSAwCiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gNDAKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQWxpZ25tZW50ID0gdGFDZW50ZXIKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnW1N5c3RlbS5SZXN0YXVyYW50Lk5hbWVdJykKICAgICAgZW5kCiAgICBlbmQKICAgIG9iamVjdCBibmRQcmludENoZWNrczogVFBEQmFuZAogICAgICBDb2xvciA9IDExNTI4NDMxCiAgICAgIFRvcCA9IDcKICAgICAgSGVpZ2h0ID0gNgogICAgICBCb2R5LlNpemUgPSA1CiAgICAgIEZvb3Rlci5TaXplID0gMAogICAgICBCYW5kVHlwZSA9IGJ0TWFzdGVyRGF0YQogICAgICBEYXRhU2V0TmFtZSA9ICdQcmludENoZWNrcycKICAgICAgQ2FsY0ZpZWxkcyA9IDw+CiAgICAgIG9iamVjdCBNZW1vNDogVFBETWVtbwogICAgICAgIFZpc2libGUgPSBGYWxzZQogICAgICAgIExlZnQgPSAwCiAgICAgICAgVG9wID0gNAogICAgICAgIFdpZHRoID0gMTMKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJ9CT0L7RgdGC0LXQuSBbR3Vlc3RDb3VudF0nKQogICAgICBlbmQKICAgICAgb2JqZWN0IG1lbUF1dGhvcjogVFBETWVtbwogICAgICAgIExlZnQgPSAxMAogICAgICAgIFRvcCA9IDIKICAgICAgICBXaWR0aCA9IDIyCiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICdbQXV0aG9yXScpCiAgICAgIGVuZAogICAgICBvYmplY3QgTWVtbzU6IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMAogICAgICAgIFRvcCA9IDIKICAgICAgICBXaWR0aCA9IDkKICAgICAgICBIZWlnaHQgPSAyCiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJ9Ca0LDRgdGB0LjRgDonCiAgICAgICAgICAn0J7RhNC40YbQuNCw0L3RgjonKQogICAgICBlbmQKICAgICAgb2JqZWN0IE1lbW82OiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDEwCiAgICAgICAgVG9wID0gMwogICAgICAgIFdpZHRoID0gMjIKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJ1tPcmRlcnMuTWFpbldhaXRlcl0nKQogICAgICBlbmQKICAgICAgb2JqZWN0IE1lbW8xNjogVFBETWVtbwogICAgICAgIExlZnQgPSAwCiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gMTIKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJ1tPcmRlcnMuU3RhcnRTZXJ2aWNlXScpCiAgICAgICAgRm9ybWF0ID0gJ0RhdGUnCiAgICAgIGVuZAogICAgICBvYmplY3QgTWVtbzE5OiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDEyCiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gMTQKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQWxpZ25tZW50ID0gdGFSaWdodEp1c3RpZnkKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAn0J7RgtC60YDRi9GCIFtPcmRlcnMuU3RhcnRTZXJ2aWNlXScpCiAgICAgICAgRm9ybWF0ID0gJ1RpbWUnCiAgICAgIGVuZAogICAgICBvYmplY3QgTWVtbzIxOiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDI2CiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gMTQKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQWxpZ25tZW50ID0gdGFSaWdodEp1c3RpZnkKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAn0J/QtdGH0LDRgtGMIFtOb3ddJykKICAgICAgICBGb3JtYXQgPSAnVGltZScKICAgICAgZW5kCiAgICAgIG9iamVjdCBNZW1vMTE6IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMTYKICAgICAgICBUb3AgPSA0CiAgICAgICAgV2lkdGggPSAxCiAgICAgICAgSGVpZ2h0ID0gMQogICAgICBlbmQKICAgIGVuZAogICAgb2JqZWN0IGJuZERpc2NvdW50czogVFBEQmFuZAogICAgICBDb2xvciA9IDE2MTc3MzM5CiAgICAgIFRvcCA9IDI4CiAgICAgIEhlaWdodCA9IDMKICAgICAgQmFuZFR5cGUgPSBidE1hc3RlckRhdGEKICAgICAgRmlsdGVyID0gCiAgICAgICAgJ3soKiNTaG9ydE5vdGF0aW9uIyopfTtiZWdpbjtGaWx0ZXIgOj0gKFtJc0NoYXJnZV0gPSAwKSBhbmQgKFtEaXMnICsKICAgICAgICAnaFVOSV09MCk7ZW5kJwogICAgICBEYXRhU2V0TmFtZSA9ICdEaXNjb3VudHMnCiAgICAgIEdyb3VwRmllbGRzID0gJ0Rpc2NvdW50JwogICAgICBDYWxjRmllbGRzID0gPD4KICAgICAgb2JqZWN0IG1lbURpc2NvdW50OiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDAKICAgICAgICBUb3AgPSAxCiAgICAgICAgV2lkdGggPSAyMQogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnW0Rpc2NvdW50XScpCiAgICAgIGVuZAogICAgICBvYmplY3QgbWVtQ2FsY0Ftb3VudDogVFBETWVtbwogICAgICAgIExlZnQgPSAyMwogICAgICAgIFRvcCA9IDEKICAgICAgICBXaWR0aCA9IDE3CiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIEFsaWdubWVudCA9IHRhUmlnaHRKdXN0aWZ5CiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJ1tDYWxjQW1vdW50XScpCiAgICAgIGVuZAogICAgICBvYmplY3QgTWVtbzE3OiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDAKICAgICAgICBUb3AgPSAyCiAgICAgICAgV2lkdGggPSA0MAogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0nKQogICAgICBlbmQKICAgIGVuZAogICAgb2JqZWN0IGJuZEJpbGxQYXk6IFRQREJhbmQKICAgICAgU2NyaXB0LlN0cmluZ3MgPSAoCiAgICAgICAgJ2JlZ2luIGlmIFtGdWxseVBhaWRdIHRoZW4gJwogICAgICAgICcgIG1lbU9yaWdpb25hbFN1bTEuVGV4dCA6PSBGbG9hdFRvU3RyKFtPcmlnaW5hbFN1bV0pJwogICAgICAgICdlbHNlICcKICAgICAgICAKICAgICAgICAgICcgIG1lbU9yaWdpb25hbFN1bTEuVGV4dCA6PSAnIzM5Jy0tLS0tLS0tLS0tLSAnIzM5JyArIEZsb2F0VG9TdHIoW09yaWdpbmEnICsKICAgICAgICAgICdsU3VtXSk7IGVuZCcpCiAgICAgIENvbG9yID0gMTEyNDMxMjAKICAgICAgVG9wID0gNDEKICAgICAgSGVpZ2h0ID0gMwogICAgICBCYW5kVHlwZSA9IGJ0TWFzdGVyRGF0YQogICAgICBTb3J0S2V5cyA9ICdDdXJyZW5jeVR5cGU7Q3VycmVuY3knCiAgICAgIERhdGFTZXROYW1lID0gJ0JpbGxQYXknCiAgICAgIENhbGNGaWVsZHMgPSA8PgogICAgICBvYmplY3QgbWVtQ3VycmVuY3kyOiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDAKICAgICAgICBUb3AgPSAxCiAgICAgICAgV2lkdGggPSAxNgogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnW0N1cnJlbmN5XScpCiAgICAgIGVuZAogICAgICBvYmplY3QgbWVtT3JpZ2lvbmFsU3VtMTogVFBETWVtbwogICAgICAgIExlZnQgPSAyNwogICAgICAgIFRvcCA9IDEKICAgICAgICBXaWR0aCA9IDEzCiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIEFsaWdubWVudCA9IHRhUmlnaHRKdXN0aWZ5CiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJ1tPcmlnaW5hbFN1bV0nKQogICAgICAgIFdvcmRXcmFwID0gVHJ1ZQogICAgICBlbmQKICAgICAgb2JqZWN0IE1lbW8yNDogVFBETWVtbwogICAgICAgIExlZnQgPSAwCiAgICAgICAgVG9wID0gMgogICAgICAgIFdpZHRoID0gNDAKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJykKICAgICAgZW5kCiAgICBlbmQKICAgIG9iamVjdCBCYW5kUmVwU3VtOiBUUERCYW5kCiAgICAgIENvbG9yID0gMTQ1NDc5NjMKICAgICAgVG9wID0gNDUKICAgICAgSGVpZ2h0ID0gNgogICAgICBIZWFkZXIuU2l6ZSA9IDQKICAgICAgQmFuZFR5cGUgPSBidFJlcG9ydFN1bW1hcnkKICAgICAgQ2FsY0ZpZWxkcyA9IDw+CiAgICAgIG9iamVjdCBNZW1vMTg6IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMAogICAgICAgIFRvcCA9IDEKICAgICAgICBXaWR0aCA9IDQwCiAgICAgICAgSGVpZ2h0ID0gMgogICAgICAgIEFsaWdubWVudCA9IHRhQ2VudGVyCiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJ9CS0L7Qt9C90LDQs9GA0LDQttC00LXQvdC40LUg0L7RhNC40YbQuNCw0L3RgtGDINC/0YDQuNCy0LXRgtGB0YLQstGD0LXRgtGB0Y8nCiAgICAgICAgICAn0L3QviDQstGB0LXQs9C00LAg0L7RgdGC0LDQtdGC0YHRjyDQvdCwINCS0LDRiNC1INGD0YHQvNC+0YLRgNC10L3QuNC1LicpCiAgICAgIGVuZAogICAgICBvYmplY3QgTWVtbzc6IFRQRE1lbW8KICAgICAgICBTY3JpcHQuU3RyaW5ncyA9ICgKICAgICAgICAgICd2YXIgc1FSLCB3Q29kZSwgc3VtLCBvcmRlcklkLCBvcmdJZCwgZGVmYXVsdFdhaXRlcjogc3RyaW5nOycKICAgICAgICAgICcnCiAgICAgICAgICAnYmVnaW4nCiAgICAgICAgICAnICAgd0NvZGUgOj0gW09yZGVycy5NYWluV2FpdGVyLmdlbkRDVGlwc0NvZGVdOyAnCiAgICAgICAgICAnICAgb3JnSWQgOj0gW1N5c3RlbS5SZXN0YXVyYW50LmdlbkRDVGlwc1Jlc3RDb2RlXTsnCiAgICAgICAgICAnICAgZGVmYXVsdFdhaXRlciA6PSBbU3lzdGVtLlJlc3RhdXJhbnQuZ2VuRENUaXBzRGVmYXVsdENvZGVdOycKICAgICAgICAgICcgICBvcmRlcklkIDo9IEludFRvU3RyKFRydW5jKFtQcmludENoZWNrcy5DaGVja051bV0pKTsnCiAgICAgICAgICAnICAgaWYgKHdDb2RlID0gJyMzOSMzOScpIHRoZW4gd0NvZGUgOj0gZGVmYXVsdFdhaXRlcjsnCiAgICAgICAgICAKICAgICAgICAgICAgJyAgIHN1bSA6PSBJbnRUb1N0cihUcnVuYyhbUHJpbnRDaGVja3MuQmluZGVkU3VtXS1bUHJpbnRDaGVja3MuUGEnICsKICAgICAgICAgICAgJ2lkU3VtXSkpOycKICAgICAgICAgICcgICBpZiAoKHdDb2RlIDw+ICcjMzkjMzknKSBBTkQgKG9yZ0lkIDw+ICcjMzkjMzknKSkgdGhlbiAnCiAgICAgICAgICAnICAgYmVnaW4gJwogICAgICAgICAgCiAgICAgICAgICAgICcgICAgICAgc1FSIDo9ICcjMzknaHR0cHM6Ly90aXBzLmRlbGl2ZXJ5LWNsdWIucnUvcGF5LycjMzknICsgd0NvZGUgKyAnIzM5Jz9vJyArCiAgICAgICAgICAgICdyZz0nIzM5Jysgb3JnSWQgKyAnIzM5JyZzcmM9MyZvcmRlclN1bT0nIzM5JyArIHN1bSArICcjMzknJm9yZGVySWQ9JyMzOScgKyBvcmRlcklkOycKICAgICAgICAgICcgICAgICAgTWVtbzcudGV4dCAgOj0gIENoYXIoIzEwKScKICAgICAgICAgICcgICAgICAgICAgICAgICAgICAgICsgJyMzOSc8SDI+PFcyPiDQkdC10LfQvdCw0LvQuNGH0L3Ri9C1INGH0LDQtdCy0YvQtScjMzknICsgQ2hhcigjMTApJwogICAgICAgICAgCiAgICAgICAgICAgICcgICAgICAgICAgICAgICAgICAgICsgJyMzOSc8SDE+PFcxPiAgICAgICAg0KfRgtC+0LHRiyDQvtGB0YLQsNCy0LjRgtGMINGH0LDQtdCy0YvQtSwnIzM5JyArJyArCiAgICAgICAgICAgICcgQ2hhcigjMTApICAnCiAgICAgICAgICAKICAgICAgICAgICAgJyAgICAgICAgICAgICAgICAgICAgKyAnIzM5JyAgICAgINC90LDQstC10LTQuNGC0LUg0LrQsNC80LXRgNGDINC90LAgUVIt0LrQvtC0JyMzOScgKyBDaGFyKCMnICsKICAgICAgICAgICAgJzEwKSAgICAgICcKICAgICAgICAgIAogICAgICAgICAgICAnICAgICAgICAgICAgICAgICAgICArICcjMzknICAgICAgICAgICA8UVJDb2RlICcjMzknICsgc1FSICsgJyMzOSc+JyMzOScgKyBDaGFyKCMnICsKICAgICAgICAgICAgJzEwKSAgJwogICAgICAgICAgCiAgICAgICAgICAgICcgICAgICAgICAgICAgICAgICAgICsgJyMzOScgICAgICAgICBEZWxpdmVyeSBDbHViINCn0LDQtdCy0YvQtScjMzknICArIENoYXIoIzEnICsKICAgICAgICAgICAgJzApJwogICAgICAgICAgJyAgIGVuZDsnCiAgICAgICAgICAnZW5kJykKICAgICAgICBMZWZ0ID0gMAogICAgICAgIFRvcCA9IDQKICAgICAgICBXaWR0aCA9IDQwCiAgICAgICAgSGVpZ2h0ID0gMQogICAgICBlbmQKICAgIGVuZAogICAgb2JqZWN0IGJuZFRheGVzOiBUUERCYW5kCiAgICAgIENvbG9yID0gMTEyNDMxMjAKICAgICAgVG9wID0gMzEKICAgICAgSGVpZ2h0ID0gMwogICAgICBCb2R5LlNpemUgPSAwCiAgICAgIEZvb3Rlci5TaXplID0gMgogICAgICBCYW5kVHlwZSA9IGJ0TWFzdGVyRGF0YQogICAgICBGaWx0ZXIgPSAneygqI1Nob3J0Tm90YXRpb24jKil9O2JlZ2luO0ZpbHRlciA6PSAoW0FkZFRvUHJpY2VdID0gMSk7ZW5kJwogICAgICBEYXRhU2V0TmFtZSA9ICdUYXhlcycKICAgICAgQ2FsY0ZpZWxkcyA9IDw+CiAgICAgIG9iamVjdCBNZW1vMjA6IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMAogICAgICAgIFRvcCA9IDEKICAgICAgICBXaWR0aCA9IDE5CiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICfQlNC+0LHQsNCy0LvRj9C10LzRi9C5INC90LDQu9C+0LMnKQogICAgICBlbmQKICAgICAgb2JqZWN0IG1lbVN1bTogVFBETWVtbwogICAgICAgIExlZnQgPSAyMgogICAgICAgIFRvcCA9IDEKICAgICAgICBXaWR0aCA9IDE4CiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIEFsaWdubWVudCA9IHRhUmlnaHRKdXN0aWZ5CiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJ1tTVU0oU3VtKV0nKQogICAgICBlbmQKICAgICAgb2JqZWN0IE1lbW8yNjogVFBETWVtbwogICAgICAgIExlZnQgPSAwCiAgICAgICAgVG9wID0gMgogICAgICAgIFdpZHRoID0gNDAKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJykKICAgICAgZW5kCiAgICBlbmQKICAgIG9iamVjdCBibmRQYXltZW50czogVFBEQmFuZAogICAgICBDb2xvciA9IDExNzc4NDI3CiAgICAgIFRvcCA9IDM0CiAgICAgIEhlaWdodCA9IDQKICAgICAgSGVhZGVyLlNpemUgPSAyCiAgICAgIEJhbmRUeXBlID0gYnRNYXN0ZXJEYXRhCiAgICAgIEZpbHRlciA9IAogICAgICAgICd7KCojU2hvcnROb3RhdGlvbiMqKX07YmVnaW47ICBGaWx0ZXIgOj0gKFtJc1Byb21pc2VkUGF5bWVudF0gPSAwJyArCiAgICAgICAgJyk7ZW5kJwogICAgICBEYXRhU2V0TmFtZSA9ICdQYXltZW50cycKICAgICAgQ2FsY0ZpZWxkcyA9IDw+CiAgICAgIG9iamVjdCBNZW1vMjU6IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMAogICAgICAgIFRvcCA9IDEKICAgICAgICBXaWR0aCA9IDE5CiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICfQn9GA0LXQtNC+0L/Qu9Cw0YLQsCcpCiAgICAgIGVuZAogICAgICBvYmplY3QgbWVtQ3VycmVuY3k6IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMAogICAgICAgIFRvcCA9IDIKICAgICAgICBXaWR0aCA9IDIxCiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICdbQ3VycmVuY3ldJykKICAgICAgZW5kCiAgICAgIG9iamVjdCBtZW1PcmlnaW5hbFN1bTogVFBETWVtbwogICAgICAgIFNjcmlwdC5TdHJpbmdzID0gKAogICAgICAgICAgJ2JlZ2luIG1lbU9yaWdpbmFsU3VtLlZpc2libGUgOj0gW09yaWdpbmFsU3VtXSA8PiBbQmFzaWNTdW1dOyBlbmQnKQogICAgICAgIExlZnQgPSAyMQogICAgICAgIFRvcCA9IDIKICAgICAgICBXaWR0aCA9IDgKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQWxpZ25tZW50ID0gdGFSaWdodEp1c3RpZnkKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnW09yaWdpbmFsU3VtXScpCiAgICAgIGVuZAogICAgICBvYmplY3QgbWVtQmFzaWNTdW06IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMzAKICAgICAgICBUb3AgPSAyCiAgICAgICAgV2lkdGggPSAxMAogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBBbGlnbm1lbnQgPSB0YVJpZ2h0SnVzdGlmeQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICdbQmFzaWNTdW1dJykKICAgICAgZW5kCiAgICAgIG9iamVjdCBNZW1vMzI6IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMAogICAgICAgIFRvcCA9IDMKICAgICAgICBXaWR0aCA9IDQwCiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICctLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLScpCiAgICAgIGVuZAogICAgZW5kCiAgICBvYmplY3QgYm5kUHJpbnRDaGVja3MxOiBUUERCYW5kCiAgICAgIFNjcmlwdC5TdHJpbmdzID0gKAogICAgICAgICdiZWdpbiBibmRQcmludENoZWNrczEuVmlzaWJsZSA6PSAoRGlzY291bnRzLlJlY0NvdW50ID4gMCknCiAgICAgICAgJyAgb3IgKFRheGVzLlJlY0NvdW50ID4gMCknCiAgICAgICAgJyAgb3IgKFBheW1lbnRzLlJlY0NvdW50ID4gMCkgZW5kJykKICAgICAgQ29sb3IgPSA5MzQyNjA2CiAgICAgIFRvcCA9IDM4CiAgICAgIEhlaWdodCA9IDMKICAgICAgQm9keS5TaXplID0gMgogICAgICBGb290ZXIuU2l6ZSA9IDAKICAgICAgQmFuZFR5cGUgPSBidE1hc3RlckRhdGEKICAgICAgRGF0YVNldE5hbWUgPSAnUHJpbnRDaGVja3MnCiAgICAgIENhbGNGaWVsZHMgPSA8PgogICAgICBvYmplY3QgTWVtbzMwOiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDAKICAgICAgICBUb3AgPSAxCiAgICAgICAgV2lkdGggPSAxOQogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAn0JjRgtC+0LPQviDQuiDQvtC/0LvQsNGC0LU6JykKICAgICAgZW5kCiAgICAgIG9iamVjdCBtZW1CaW5kZWRTdW0yOiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDIxCiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gMTkKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQWxpZ25tZW50ID0gdGFSaWdodEp1c3RpZnkKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnW0JpbmRlZFN1bS1QYWlkU3VtXScpCiAgICAgIGVuZAogICAgICBvYmplY3QgTWVtbzMxOiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDAKICAgICAgICBUb3AgPSAyCiAgICAgICAgV2lkdGggPSA0MAogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0nKQogICAgICBlbmQKICAgIGVuZAogICAgb2JqZWN0IGJuZERpc2hlczogVFBEQmFuZAogICAgICBTY3JpcHQuU3RyaW5ncyA9ICgKICAgICAgICAnYmVnaW4gLy8g0J3QtSDQv9C10YfQsNGC0LDQtdC8INC80L7QtNC40YTQuNC60LDRgtC+0YDRiyDQtNC70Y8g0LrQvtC80LHQvi3QsdC70Y7QtNCwJwogICAgICAgICdibmRNb2RpZmllcnMuVmlzaWJsZSA6PSBbSXNDb21ib10gPSAwOycKICAgICAgICAnLy8g0JTQu9GPINC60L7QvNCx0L4t0LrQvtC80L/QvtC90LXQvdGC0L7QsiDQv9GA0Y/Rh9C10Lwg0YHRg9C80LzRgycKICAgICAgICAnbWVtUFJMaXN0U3VtLlZpc2libGUgOj0gW0NvbWJvVU5JXSA9IDA7IGVuZCcpCiAgICAgIENvbG9yID0gOTg3NjQzMwogICAgICBUb3AgPSAxMwogICAgICBIZWlnaHQgPSAxMgogICAgICBIZWFkZXIuU2l6ZSA9IDIKICAgICAgQm9keS5TaXplID0gNwogICAgICBGb290ZXIuU2l6ZSA9IDMKICAgICAgQmFuZFR5cGUgPSBidE1hc3RlckRhdGEKICAgICAgRGF0YVNldE5hbWUgPSAnRGlzaGVzJwogICAgICBDYWxjRmllbGRzID0gPD4KICAgICAgb2JqZWN0IE1lbW8yMjogVFBETWVtbwogICAgICAgIExlZnQgPSAwCiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gMjEKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJ9CR0LvRjtC00L4nKQogICAgICBlbmQKICAgICAgb2JqZWN0IE1lbW84OiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDIxCiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gOAogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBBbGlnbm1lbnQgPSB0YVJpZ2h0SnVzdGlmeQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICfQmtC+0Lst0LLQvicpCiAgICAgIGVuZAogICAgICBvYmplY3QgTWVtbzI3OiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDI5CiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gMTEKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQWxpZ25tZW50ID0gdGFSaWdodEp1c3RpZnkKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAn0KHRg9C80LzQsCcpCiAgICAgIGVuZAogICAgICBvYmplY3QgbWVtUW50OiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDIxCiAgICAgICAgVG9wID0gMwogICAgICAgIFdpZHRoID0gOAogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBBbGlnbm1lbnQgPSB0YVJpZ2h0SnVzdGlmeQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICdbUXVhbnRpdHldJykKICAgICAgZW5kCiAgICAgIG9iamVjdCBtZW1QUkxpc3RTdW06IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMjkKICAgICAgICBUb3AgPSAzCiAgICAgICAgV2lkdGggPSAxMQogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBBbGlnbm1lbnQgPSB0YVJpZ2h0SnVzdGlmeQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICdbUFJMaXN0U3VtXScpCiAgICAgIGVuZAogICAgICBvYmplY3QgbWVtRGlzaE5hbWUxOiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDAKICAgICAgICBUb3AgPSAzCiAgICAgICAgV2lkdGggPSAyMQogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnW0Rpc2hOYW1lXScpCiAgICAgICAgV29yZFdyYXAgPSBUcnVlCiAgICAgIGVuZAogICAgICBvYmplY3QgTWVtbzEzOiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDAKICAgICAgICBUb3AgPSA5CiAgICAgICAgV2lkdGggPSA0MAogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0nKQogICAgICBlbmQKICAgICAgb2JqZWN0IE1lbW8xMjogVFBETWVtbwogICAgICAgIExlZnQgPSAwCiAgICAgICAgVG9wID0gMTAKICAgICAgICBXaWR0aCA9IDIxCiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICfQktGB0LXQs9C+OicpCiAgICAgIGVuZAogICAgICBvYmplY3QgbWVtUFJMaXN0U3VtMzogVFBETWVtbwogICAgICAgIExlZnQgPSAyMQogICAgICAgIFRvcCA9IDEwCiAgICAgICAgV2lkdGggPSAxOQogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBBbGlnbm1lbnQgPSB0YVJpZ2h0SnVzdGlmeQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICdbU1VNSUYoUFJMaXN0U3VtO0NvbWJvVU5JPTApXScpCiAgICAgIGVuZAogICAgICBvYmplY3QgTWVtbzk6IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMAogICAgICAgIFRvcCA9IDExCiAgICAgICAgV2lkdGggPSA0MAogICAgICAgIEhlaWdodCA9IDEKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAnLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0nKQogICAgICBlbmQKICAgICAgb2JqZWN0IE1lbW8yODogVFBETWVtbwogICAgICAgIFNjcmlwdC5TdHJpbmdzID0gKAogICAgICAgICAgJ2JlZ2luIE1lbW8yOC5WaXNpYmxlIDo9IChbSXNDb21ib10gPSAxKSBvciAoW1JlY05vXSA9IDEpOyBlbmQnKQogICAgICAgIExlZnQgPSAwCiAgICAgICAgVG9wID0gMgogICAgICAgIFdpZHRoID0gNDAKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgJy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJykKICAgICAgZW5kCiAgICAgIG9iamVjdCBibmRNb2RpZmllcnM6IFRQREJhbmQKICAgICAgICBDb2xvciA9IDE0Mjc3MDgxCiAgICAgICAgVG9wID0gNAogICAgICAgIEhlaWdodCA9IDIKICAgICAgICBGb290ZXIuU2l6ZSA9IDAKICAgICAgICBCYW5kVHlwZSA9IGJ0TWFzdGVyRGF0YQogICAgICAgIERhdGFTZXROYW1lID0gJ01vZGlmaWVycycKICAgICAgICBHcm91cEZpZWxkcyA9ICdNb2RpTmFtZScKICAgICAgICBDYWxjRmllbGRzID0gPD4KICAgICAgICBvYmplY3QgbWVtTW9kaU5hbWU6IFRQRE1lbW8KICAgICAgICAgIFNjcmlwdC5TdHJpbmdzID0gKAogICAgICAgICAgICAndmFyJwogICAgICAgICAgICAnICBQYWlkTW9kaUNudCA6IGludGVnZXI7JwogICAgICAgICAgICAnYmVnaW4nCiAgICAgICAgICAgICcnCiAgICAgICAgICAgIAogICAgICAgICAgICAgICdpZiAoW0ZyZWVNb2RpQ250XTw+W01vZGlDbnRdKSBhbmQgKChbUHJpY2VdPDApIG9yIChbUHJpY2VdPjApKSB0JyArCiAgICAgICAgICAgICAgJ2hlbiBiZWdpbicKICAgICAgICAgICAgJyAgUGFpZE1vZGlDbnQgOj1bTW9kaUNudF0tW0ZyZWVNb2RpQ250XTsgJwogICAgICAgICAgICAnICBpZiBbUHJpY2VdPDAgdGhlbiBiZWdpbicKICAgICAgICAgICAgCiAgICAgICAgICAgICAgJyAgICBNZW1Nb2RpTmFtZS5UZXh0IDo9IEludFRvU3RyKFBhaWRNb2RpQ250KSArICcjMzkneCAnIzM5JyArIFtNb2RpTmFtZScgKwogICAgICAgICAgICAgICddICsnIzM5JygnIzM5JytGbG9hdFRvU3RyKFtQcmljZV0pKycjMzknKScjMzkKICAgICAgICAgICAgJyAgZW5kIGVsc2UnCiAgICAgICAgICAgICcgICAgaWYgW1ByaWNlXT4wIHRoZW4nCiAgICAgICAgICAgIAogICAgICAgICAgICAgICcgICAgICBNZW1Nb2RpTmFtZS5UZXh0IDo9IEludFRvU3RyKFBhaWRNb2RpQ250KSArICcjMzkneCAnIzM5JyArIFtNb2RpTmEnICsKICAgICAgICAgICAgICAnbWVdICsnIzM5JygrJyMzOScrRmxvYXRUb1N0cihbUHJpY2VdKSsnIzM5JyknIzM5JzsnCiAgICAgICAgICAgICcgIGlmIFtGcmVlTW9kaUNudF0+MCB0aGVuICcKICAgICAgICAgICAgCiAgICAgICAgICAgICAgJyAgICBNZW1Nb2RpTmFtZS5UZXh0IDo9IE1lbU1vZGlOYW1lLlRleHQgKyBJbnRUb1N0cihbRnJlZU1vZGlDbnQnICsKICAgICAgICAgICAgICAnXSkgKyAnIzM5J3ggJyMzOScgKyBbTW9kaU5hbWVdOyAgJwogICAgICAgICAgICAnZW5kJwogICAgICAgICAgICAnZWxzZSBpZiBbTW9kaUNudF0gPiAxIHRoZW4nCiAgICAgICAgICAgICcgIE1lbU1vZGlOYW1lLlRleHQgOj0gSW50VG9TdHIoW01vZGlDbnRdKSArICcjMzkneCAnIzM5JyArIFtNb2RpTmFtZV07JwogICAgICAgICAgICAnZW5kJykKICAgICAgICAgIExlZnQgPSAzCiAgICAgICAgICBUb3AgPSAxCiAgICAgICAgICBXaWR0aCA9IDM3CiAgICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAgICdbTW9kaU5hbWVdJykKICAgICAgICBlbmQKICAgICAgZW5kCiAgICAgIG9iamVjdCBibmREaXNjb3VudHMxOiBUUERCYW5kCiAgICAgICAgQ29sb3IgPSAxMTI0MzEyMAogICAgICAgIFRvcCA9IDYKICAgICAgICBIZWlnaHQgPSAyCiAgICAgICAgRm9vdGVyLlNpemUgPSAwCiAgICAgICAgQmFuZFR5cGUgPSBidE1hc3RlckRhdGEKICAgICAgICBEYXRhU2V0TmFtZSA9ICdEaXNjb3VudHMnCiAgICAgICAgQ2FsY0ZpZWxkcyA9IDw+CiAgICAgICAgb2JqZWN0IG1lbURpc2NvdW50MTogVFBETWVtbwogICAgICAgICAgTGVmdCA9IDMKICAgICAgICAgIFRvcCA9IDEKICAgICAgICAgIFdpZHRoID0gMjYKICAgICAgICAgIEhlaWdodCA9IDEKICAgICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICAgJ1tEaXNjb3VudF0nKQogICAgICAgIGVuZAogICAgICAgIG9iamVjdCBtZW1DYWxjQW1vdW50MTogVFBETWVtbwogICAgICAgICAgTGVmdCA9IDI5CiAgICAgICAgICBUb3AgPSAxCiAgICAgICAgICBXaWR0aCA9IDExCiAgICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgICBBbGlnbm1lbnQgPSB0YVJpZ2h0SnVzdGlmeQogICAgICAgICAgQ29udGVudC5TdHJpbmdzID0gKAogICAgICAgICAgICAnW0NhbGNBbW91bnRdJykKICAgICAgICBlbmQKICAgICAgZW5kCiAgICBlbmQKICAgIG9iamVjdCBibmRQcmludENoZWNrczI6IFRQREJhbmQKICAgICAgQ29sb3IgPSAxNjE3NzMzOQogICAgICBUb3AgPSA0CiAgICAgIEhlaWdodCA9IDMKICAgICAgQm9keS5TaXplID0gMgogICAgICBGb290ZXIuU2l6ZSA9IDAKICAgICAgQmFuZFR5cGUgPSBidE1hc3RlckRhdGEKICAgICAgRGF0YVNldE5hbWUgPSAnUHJpbnRDaGVja3MnCiAgICAgIENhbGNGaWVsZHMgPSA8PgogICAgICBvYmplY3QgTWVtbzI6IFRQRE1lbW8KICAgICAgICBMZWZ0ID0gMAogICAgICAgIFRvcCA9IDEKICAgICAgICBXaWR0aCA9IDEyCiAgICAgICAgSGVpZ2h0ID0gMQogICAgICAgIENvbnRlbnQuU3RyaW5ncyA9ICgKICAgICAgICAgICfQp9C10LogI1tDaGVja051bV0nKQogICAgICBlbmQKICAgICAgb2JqZWN0IE1lbW8zOiBUUERNZW1vCiAgICAgICAgTGVmdCA9IDE0CiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gMTIKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQWxpZ25tZW50ID0gdGFSaWdodEp1c3RpZnkKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAn0KHRgtC+0LsgIyBbT3JkZXJzLlRhYmxlTmFtZV0nKQogICAgICBlbmQKICAgICAgb2JqZWN0IE1lbW8xNTogVFBETWVtbwogICAgICAgIFNjcmlwdC5TdHJpbmdzID0gKAogICAgICAgICAgJ2JlZ2luIGlmIFtTZWF0Tm9dID0gMCB0aGVuICcKICAgICAgICAgICcgIE1lbW8xNS5Db250ZW50LlRleHQgOj0gTWVtbzQuQ29udGVudC5UZXh0JwogICAgICAgICAgJ2Vsc2UgTWVtbzE1LkNvbnRlbnQuVGV4dCA6PSAnIzM5J9Cc0LXRgdGC0L4gW1NlYXROb10vW0d1ZXN0Q291bnRdJyMzOSc7IGVuZCcpCiAgICAgICAgTGVmdCA9IDI2CiAgICAgICAgVG9wID0gMQogICAgICAgIFdpZHRoID0gMTQKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQWxpZ25tZW50ID0gdGFSaWdodEp1c3RpZnkKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAn0JzQtdGB0YLQviBbU2VhdE5vXS9bR3Vlc3RDb3VudF0nKQogICAgICBlbmQKICAgICAgb2JqZWN0IG1lbUJpbmRlZFN1bTogVFBETWVtbwogICAgICAgIFNjcmlwdC5TdHJpbmdzID0gKAogICAgICAgICAgJ2JlZ2luIG1lbUJpbmRlZFN1bS5WaXNpYmxlIDo9IFtTZWF0Tm9dIDw+IDA7IGVuZCcpCiAgICAgICAgTGVmdCA9IDEwCiAgICAgICAgVG9wID0gMgogICAgICAgIFdpZHRoID0gMzEKICAgICAgICBIZWlnaHQgPSAxCiAgICAgICAgQWxpZ25tZW50ID0gdGFSaWdodEp1c3RpZnkKICAgICAgICBDb250ZW50LlN0cmluZ3MgPSAoCiAgICAgICAgICAn0KHRg9C80LzQsCBbQmluZGVkU3VtXS9bT3JkZXJzLlBhaWRTdW1dJykKICAgICAgZW5kCiAgICBlbmQKICBlbmQKZW5kCg=="
    }
}
{
    "taskResponse": {
        "isOk": true,
        "maket": {
            "name": "Тест api 40",
            "status": "Draft"
        }
    },
    "responseCommon": {
        "taskGuid": "303b49fc-e5dc-4ff6-bf46-5496692730e0",
        "taskType": "CreateMaket",
        "objectId": 199990246,
        "agentGuid": "d564619a-50c3-3d87-0816-de67ed9c8e18"
    }
}
{
    "taskResponse": {
        "isOk": false,
        "error": "Макет с Guid = 3fa85f64-5717-4562-b3fc-2c963f66afa6 уже существует",
        "maket": {
            "name": "Тест api 40",
            "status": "Draft"
        }
    },
    "responseCommon": {
        "taskGuid": "0977c797-e9c8-484e-8909-7e0bc784ea87",
        "taskType": "CreateMaket",
        "objectId": 199990246,
        "agentGuid": "d564619a-50c3-3d87-0816-de67ed9c8e18"
    }
}
{
    "responseCommon": {
        "taskGuid": "ad03f303-172b-46b7-9df3-4d4d3f09a547",
        "taskType": "CreateMaket",
        "objectId": 199990246
    },
    "error": {
        "wsError": {
            "code": "Request is restricted",
            "desc": "Запрос CreateMaket не разрешен настройками ресторана"
        }
    }
}