{
<%- indent(2) %>"port": 4545,
<%- indent(2) %>"protocol": "https",
<%- indent(2) %>"name": "imposter contract service",
<%- indent(2) %>"recordRequests": "true",
<%- indent(2) %>"numberOfRequests": "1",
<%- indent(2) %>"key": "-----BEGIN RSA PRIVATE KEY-----\nMIICXAIBAAKBgQCrvse04YkxtVGagyvGJCsvv7LTfLK5uR/ZIJKDYCnuF+BqBzM4\nlko8O39vx+Lz9FfF11Xl+CN1aY37YurLYOle3dC/qslSbQDe2TJN7lcVHVssePvc\nO5IExpvNFV5LYtmyCMKJHxpnIprv/trUso5obqzzXhFVPV9SQbFH/snInwIDAQAB\nAoGARywlqLD6YO4qJiULw+4DM6N2oSwBCPRN3XYhIW59kdy1NFtNf7rQgsuJUTJ9\nu+lbYnKNd2LwltyqaS4h7Sx5KRhpFNmMpyVsBf5J2q3fbfmrsXt+emY7XhVTc1NV\nizUWYyxCoTTeMWvN/6NYpPV0lSxq7jMTFVZrWQUMqJclxpECQQDTlGwALtAX1Y8u\nGKsEHPkoq9bhHA5N9WAboQ4LQCZVC8eBf/XH//2iosYTXRNgII2JLmHmmxJHo5iN\nJPFMbnoHAkEAz81osJf+yHm7PBBJP4zEWZCV25c+iJiPDpj5UoUXEbq47qVfy1mV\nDqy2zoDynAWitU7PeHyZ8ozfyribPoR2qQJAVmvMhXKZmvKnLivzRpXTC9LMzVwZ\nV6x/Wim5w8yrG5fZIMM0kEG2xwR3pZch/+SsCzl/0aLLn6lp+VT6nr6NZwJBAMxs\nHrvymoLvNeDtiJFK0nHliXafP7YyljDfDg4+vSYE0R57c1RhSQBJqgBV29TeumSw\nJes6cFuqeBE+MAJ9XxkCQDdUdhnA8HHQRNetqK7lygUep7EcHHCB6u/0FypoLw7o\nEUVo5KSEFq93UeMr3B7DDPIz3LOrFXlm7clCh1HFZhQ=\n-----END RSA PRIVATE KEY-----",
<%- indent(2) %>"cert": "-----BEGIN CERTIFICATE-----\nMIIB6TCCAVICCQCZgxbBD0CG4zANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJV\nUzETMBEGA1UECBMKU29tZS1TdGF0ZTEVMBMGA1UEChMMVGhvdWdodFdvcmtzMB4X\nDTEzMTIyOTE2NDAzN1oXDTE0MDEyODE2NDAzN1owOTELMAkGA1UEBhMCVVMxEzAR\nBgNVBAgTClNvbWUtU3RhdGUxFTATBgNVBAoTDFRob3VnaHRXb3JrczCBnzANBgkq\nhkiG9w0BAQEFAAOBjQAwgYkCgYEAq77HtOGJMbVRmoMrxiQrL7+y03yyubkf2SCS\ng2Ap7hfgagczOJZKPDt/b8fi8/RXxddV5fgjdWmN+2Lqy2DpXt3Qv6rJUm0A3tky\nTe5XFR1bLHj73DuSBMabzRVeS2LZsgjCiR8aZyKa7/7a1LKOaG6s814RVT1fUkGx\nR/7JyJ8CAwEAATANBgkqhkiG9w0BAQUFAAOBgQCPhixeKxIy+ftrfPikwjYo1uxp\ngQ18FdVN1pbI//IIx1o8kJuX8yZzO95PsCOU0GbIRCkFMhBlqHiD9H0/W/GvWzjf\n7WFW15lL61y/kH1J0wqEgoaMrUDjHZvKVr0HrN+vSxHlNQcSNFJ2KdvZ5a9dhpGf\nXOdprCdUUXzSoJWCCg==\n-----END CERTIFICATE-----",
<%- indent(2) %>"mutualAuth": false,
<%- indent(2) %>"defaultResponse": {
    "statusCode": 400,
    "body": "Bad Request",
    "headers": {}
  },
<%- indent(2) %>"stubs": [
    {
<%- indent(6) %>"responses": [
        {
<%- indent(10) %>"is": {
            "statusCode": 201,
            "headers": {
              "Location": "http://example.com/resource"
            },
            "body": "The time is ${TIME}",
            "_mode": "text"
          },
<%- indent(10) %>"repeat": 3,
<%- indent(10) %>"behaviors": [
<%- indent(12) %>{ "wait": 500 },
<%- indent(12) %>{ "decorate": "config => { config.response.body = config.response.body.replace('${TIME}', 'now'); }" },
<%- indent(12) %>{ "shellTransform": "transformResponse" },
<%- indent(12) %>{
              "copy": {
                "from": "body",
                "into": "${NAME}",
                "using": {
                  "method": "xpath",
                  "selector": "//test:name",
                  "ns": { "test": "http://example.com/test" }
                }
              }
            },
<%- indent(12) %>{
              "lookup": {
                "key": {
                  "from": { "headers": "If-Modified-Since" },
                  "using": {
                    "method": "regex",
                    "selector": "(\\w+), (\\d+) (\\w+) (\\d+)",
                    "options": { "ignoreCase": true, "multiline": true }
                  },
                  "index": 2
                },
                "fromDataSource": {
                  "csv": {
                    "path": "values.csv",
                    "keyColumn": "month",
                    "delimiter": ","
                  }
                },
                "into": "${row}"
              }
            }
          ]
        },
        {
<%- indent(10) %>"proxy": {
<%- indent(12) %>"to": "https://www.somesite.com:3000",
<%- indent(12) %>"mode": "proxyAlways",
<%- indent(12) %>"key": "-----BEGIN RSA PRIVATE KEY-----\nMIICXAIBAAKBgQCrvse04YkxtVGagyvGJCsvv7LTfLK5uR/ZIJKDYCnuF+BqBzM4\nlko8O39vx+Lz9FfF11Xl+CN1aY37YurLYOle3dC/qslSbQDe2TJN7lcVHVssePvc\nO5IExpvNFV5LYtmyCMKJHxpnIprv/trUso5obqzzXhFVPV9SQbFH/snInwIDAQAB\nAoGARywlqLD6YO4qJiULw+4DM6N2oSwBCPRN3XYhIW59kdy1NFtNf7rQgsuJUTJ9\nu+lbYnKNd2LwltyqaS4h7Sx5KRhpFNmMpyVsBf5J2q3fbfmrsXt+emY7XhVTc1NV\nizUWYyxCoTTeMWvN/6NYpPV0lSxq7jMTFVZrWQUMqJclxpECQQDTlGwALtAX1Y8u\nGKsEHPkoq9bhHA5N9WAboQ4LQCZVC8eBf/XH//2iosYTXRNgII2JLmHmmxJHo5iN\nJPFMbnoHAkEAz81osJf+yHm7PBBJP4zEWZCV25c+iJiPDpj5UoUXEbq47qVfy1mV\nDqy2zoDynAWitU7PeHyZ8ozfyribPoR2qQJAVmvMhXKZmvKnLivzRpXTC9LMzVwZ\nV6x/Wim5w8yrG5fZIMM0kEG2xwR3pZch/+SsCzl/0aLLn6lp+VT6nr6NZwJBAMxs\nHrvymoLvNeDtiJFK0nHliXafP7YyljDfDg4+vSYE0R57c1RhSQBJqgBV29TeumSw\nJes6cFuqeBE+MAJ9XxkCQDdUdhnA8HHQRNetqK7lygUep7EcHHCB6u/0FypoLw7o\nEUVo5KSEFq93UeMr3B7DDPIz3LOrFXlm7clCh1HFZhQ=\n-----END RSA PRIVATE KEY-----",
<%- indent(12) %>"cert": "-----BEGIN CERTIFICATE-----\nMIIB6TCCAVICCQCZgxbBD0CG4zANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJV\nUzETMBEGA1UECBMKU29tZS1TdGF0ZTEVMBMGA1UEChMMVGhvdWdodFdvcmtzMB4X\nDTEzMTIyOTE2NDAzN1oXDTE0MDEyODE2NDAzN1owOTELMAkGA1UEBhMCVVMxEzAR\nBgNVBAgTClNvbWUtU3RhdGUxFTATBgNVBAoTDFRob3VnaHRXb3JrczCBnzANBgkq\nhkiG9w0BAQEFAAOBjQAwgYkCgYEAq77HtOGJMbVRmoMrxiQrL7+y03yyubkf2SCS\ng2Ap7hfgagczOJZKPDt/b8fi8/RXxddV5fgjdWmN+2Lqy2DpXt3Qv6rJUm0A3tky\nTe5XFR1bLHj73DuSBMabzRVeS2LZsgjCiR8aZyKa7/7a1LKOaG6s814RVT1fUkGx\nR/7JyJ8CAwEAATANBgkqhkiG9w0BAQUFAAOBgQCPhixeKxIy+ftrfPikwjYo1uxp\ngQ18FdVN1pbI//IIx1o8kJuX8yZzO95PsCOU0GbIRCkFMhBlqHiD9H0/W/GvWzjf\n7WFW15lL61y/kH1J0wqEgoaMrUDjHZvKVr0HrN+vSxHlNQcSNFJ2KdvZ5a9dhpGf\nXOdprCdUUXzSoJWCCg==\n-----END CERTIFICATE-----",
<%- indent(12) %>"ciphers": "RC4-MD5",
<%- indent(12) %>"secureProtocol": "TLSv1_1_method",
<%- indent(12) %>"passphrase": "LetMeIn!",
<%- indent(12) %>"addWaitBehavior": "true",
<%- indent(12) %>"addDecorateBehavior": "(request, response) => { response.body = response.body.replace('${TIME}', 'now'); }",
<%- indent(12) %>"predicateGenerators": [
              {
                "matches": {
                  "path": true
                },
                "caseSensitive": true,
                "except": "^The^",
                "jsonpath": {
                  "selector": "$..book"
                },
                "xpath": {
                  "selector": "//book/@title",
                  "ns": {
                    "isbn": "http://schemas.isbn.org/ns/1999/basic.dtd"
                  }
                },
                "inject": "function (config) { return []; }",
                "ignore": { "query": "startDate" }
              }
            ],
<%- indent(12) %>"injectHeaders": {
              "X-Custom-Header": "Served by mountebank"
            }
          }
        },
        {
<%- indent(10) %>"inject": "function (config) { config.callback({ body: 'It worked!' }); }"
        }
      ],
<%- indent(6) %>"predicates": [
        {
<%- indent(10) %>"equals": {
            "body": "value"
          },
<%- indent(10) %>"caseSensitive": true,
<%- indent(10) %>"except": "^The ",
<%- indent(10) %>"jsonpath": {
            "selector": "$..book"
          },
<%- indent(10) %>"xpath": {
            "selector": "//book/@title",
            "ns": {
              "isbn": "http://schemas.isbn.org/ns/1999/basic.dtd"
            }
          }
        },
        {
<%- indent(10) %>"inject": "function (config) { return config.request.body.length < 100; }"
        }
      ],
<%- indent(6) %>"matches": [
        {
          "timestamp": "2014-01-09T02:30:31.043Z",
          "request": {
            "requestFrom": "::ffff:127.0.0.1:60523",
            "method": "POST",
            "path": "/imposters",
            "query": {},
            "headers": {
              "accept": "text/plain",
              "host": "localhost:4545",
              "content-type": "application/xml",
              "connection": "keep-alive",
              "transfer-encoding": "chunked"
            },
            "body": "<books><book title='The value' /></books>"
          },
          "response": {
            "statusCode": 201,
            "headers": {
              "Location": "http://example.com/resource"
            },
            "body": "The time is now",
            "_mode": "text"
          }
        }
      ]
    }
  ],
<%- indent(2) %>"endOfRequestResolver": {
    "inject": "function (config) { return config.request.length >= 100; }"
  },
<%- indent(2) %>"requests": [
    {
      "timestamp": "2014-01-09T02:30:31.043Z",
      "requestFrom": "::ffff:127.0.0.1:60523",
      "method": "POST",
      "path": "/imposters",
      "query": {},
      "headers": {
        "accept": "text/plain",
        "host": "localhost:4545",
        "content-type": "text/plain",
        "connection": "keep-alive",
        "transfer-encoding": "chunked"
      },
      "body": "Just checking"
    }
  ],
<%- indent(2) %>"_links": {
    "self": {
      "href": "http://localhost:2525/imposters/4545"
    }
  }
}