diff --git a/CI/samples.ci/client/petstore/typescript-fetch/builds/multiple-parameters/pom.xml b/CI/samples.ci/client/petstore/typescript-fetch/builds/multiple-parameters/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a6fc39c4f08dc9a30de600d18541ce480a910502
--- /dev/null
+++ b/CI/samples.ci/client/petstore/typescript-fetch/builds/multiple-parameters/pom.xml
@@ -0,0 +1,26 @@
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.openapitools</groupId>
+    <artifactId>TypeScriptAngularBuildPestoreClientTests</artifactId>
+    <packaging>pom</packaging>
+    <version>1.0-SNAPSHOT</version>
+    <name>TS Fetch Multiple Parameters Petstore Client</name>
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>copy-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <outputDirectory>${project.build.directory}</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
diff --git a/README.md b/README.md
index bd696231db257d6d71d4ef53d89e4fd07efac3de..76a638663d21f3ab4ad3a19787491904c8196018 100644
--- a/README.md
+++ b/README.md
@@ -597,6 +597,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
 - 2019-07-04 - [REST API のためのコード生成入門 (OpenAPI Generator)](https://gum.co/openapi_generator_ebook_big5) by [William Cheng](https://twitter.com/wing328), [中野暁人](https://github.com/ackintosh), [和田拓朗](https://github.com/taxpon)
 - 2019-07-08 - [OpenAPI Generator にコントリビュートしたら社名が載った話。(CAM) - CAM TECH BLOG](https://tech.cam-inc.co.jp/entry/2019/07/08/140000) by [CAM, Inc.](https://www.cam-inc.co.jp/)
 - 2019-07-14 - [OpenAPI GeneratorでPythonのクライアントライブラリを作成した](https://qiita.com/yuji38kwmt/items/dfb929316a1335a161c0) by [yuji38kwmt](https://qiita.com/yuji38kwmt)
+- 2019-07-19 - [Developer Experience (DX) for Open-Source Projects: How to Engage Developers and Build a Growing Developer Community](https://speakerdeck.com/wing328/developer-experience-dx-for-open-source-projects-english-japanese) by [William Cheng](https://twitter.com/wing328), [中野暁人](https://github.com/ackintosh) at [Open Source Summit Japan 2019](https://events.linuxfoundation.org/events/open-source-summit-japan-2019/)
 
 ## [6 - About Us](#table-of-contents)
 
@@ -774,7 +775,7 @@ If you want to join the committee, please kindly apply by sending an email to te
 | Elm       | @eriktim (2018/09) |
 | Erlang    | @tsloughter (2017/11) @jfacorro (2018/10) @robertoaloi (2018/10) |
 | F#        | @nmfisher (2019/05) |
-| Go        | @antihax (2017/11) @bvwells (2017/12) @grokify (2018/07) @kemokemo (2018/09 |
+| Go        | @antihax (2017/11) @bvwells (2017/12) @grokify (2018/07) @kemokemo (2018/09) |
 | GraphQL   | @renepardon (2018/12) |
 | Groovy    |  |
 | Haskell   |  |
diff --git a/bin/go-experimental-petstore.sh b/bin/go-experimental-petstore.sh
index d4eabb177cc93d8ba18c8a4e109fe46cdd76448f..ea7d839795f5518319dd855f4368c1f0f262d568 100755
--- a/bin/go-experimental-petstore.sh
+++ b/bin/go-experimental-petstore.sh
@@ -34,6 +34,6 @@ rm -rf $STUB_DIR
 
 # if you've executed sbt assembly previously it will use that instead.
 export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
-ags="generate -t modules/openapi-generator/src/main/resources/$GENERATOR -i $SPEC -g $GENERATOR -o $STUB_DIR -DpackageName=petstore $@"
+ags="generate -t modules/openapi-generator/src/main/resources/$GENERATOR -i $SPEC -g $GENERATOR -o $STUB_DIR --additional-properties packageName=petstore $@"
 
 java $JAVA_OPTS -jar $executable $ags
diff --git a/bin/swift4-petstore-objcCompatible.sh b/bin/swift4-petstore-objcCompatible.sh
index 1cec3c94b81faf05253a748e0d778d2f99e10b89..655d718fce6baee6b9c375055ba6d8a0d6569c57 100755
--- a/bin/swift4-petstore-objcCompatible.sh
+++ b/bin/swift4-petstore-objcCompatible.sh
@@ -30,3 +30,13 @@ export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
 ags="generate -t modules/openapi-generator/src/main/resources/swift4 -i modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml -g swift4 -c ./bin/swift4-petstore-objcCompatible.json -o samples/client/petstore/swift4/objcCompatible $@"
 
 java $JAVA_OPTS -jar $executable $ags
+
+if type "xcodegen" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/objcCompatible
+  xcodegen generate
+fi
+
+if type "swiftlint" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/objcCompatible
+  swiftlint autocorrect
+fi
\ No newline at end of file
diff --git a/bin/swift4-petstore-promisekit.sh b/bin/swift4-petstore-promisekit.sh
index 69c383640652db26ec3a36655856a2b27e1ad02d..6fc3975d9d73e31ba5f63e141a3e427b22f1a0fb 100755
--- a/bin/swift4-petstore-promisekit.sh
+++ b/bin/swift4-petstore-promisekit.sh
@@ -30,3 +30,13 @@ export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
 ags="generate -t modules/openapi-generator/src/main/resources/swift4 -i modules/openapi-generator/src/test/resources/2_0/swift/petstore-with-fake-endpoints-models-for-testing.yaml -g swift4 -c ./bin/swift4-petstore-promisekit.json -o samples/client/petstore/swift4/promisekit --generate-alias-as-model  $@"
 
 java $JAVA_OPTS -jar $executable $ags
+
+if type "xcodegen" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/promisekit
+  xcodegen generate
+fi
+
+if type "swiftlint" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/promisekit
+  swiftlint autocorrect
+fi
\ No newline at end of file
diff --git a/bin/swift4-petstore-rxswift.sh b/bin/swift4-petstore-rxswift.sh
index 3a50fbf823a124bce11bb9e65b4f7b000e43f808..80d2cee49a845fbd295bd2b99d6df4ad9f5ab01e 100755
--- a/bin/swift4-petstore-rxswift.sh
+++ b/bin/swift4-petstore-rxswift.sh
@@ -30,3 +30,13 @@ export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
 ags="generate -t modules/openapi-generator/src/main/resources/swift4 -i modules/openapi-generator/src/test/resources/2_0/swift/petstore-with-fake-endpoints-models-for-testing.yaml -g swift4 -c ./bin/swift4-petstore-rxswift.json -o samples/client/petstore/swift4/rxswift --generate-alias-as-model $@"
 
 java $JAVA_OPTS -jar $executable $ags
+
+if type "xcodegen" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/rxswift
+  xcodegen generate
+fi
+
+if type "swiftlint" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/rxswift
+  swiftlint autocorrect
+fi
\ No newline at end of file
diff --git a/bin/swift4-petstore-unwrapRequired.sh b/bin/swift4-petstore-unwrapRequired.sh
index 7332dcd2eae044cd876519423a3485639c2f417a..500ee6fbd16190b15256824f6d540c721515a402 100755
--- a/bin/swift4-petstore-unwrapRequired.sh
+++ b/bin/swift4-petstore-unwrapRequired.sh
@@ -30,3 +30,13 @@ export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
 ags="generate -t modules/openapi-generator/src/main/resources/swift4 -i modules/openapi-generator/src/test/resources/2_0/swift/petstore-with-fake-endpoints-models-for-testing.yaml -g swift4 -c ./bin/swift4-petstore-unwrapRequired.json -o samples/client/petstore/swift4/unwrapRequired --generate-alias-as-model $@"
 
 java $JAVA_OPTS -jar $executable $ags
+
+if type "xcodegen" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/unwrapRequired
+  xcodegen generate
+fi
+
+if type "swiftlint" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/unwrapRequired
+  swiftlint autocorrect
+fi
\ No newline at end of file
diff --git a/bin/swift4-petstore.sh b/bin/swift4-petstore.sh
index a99d4d69b1fe05f2676a7f115aa5077229f8b172..9057c1ee233116a5e0e626494d30079e99204231 100755
--- a/bin/swift4-petstore.sh
+++ b/bin/swift4-petstore.sh
@@ -30,3 +30,13 @@ export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
 ags="generate -t modules/openapi-generator/src/main/resources/swift4 -i modules/openapi-generator/src/test/resources/2_0/swift/petstore-with-fake-endpoints-models-for-testing.yaml -g swift4 -c ./bin/swift4-petstore.json -o samples/client/petstore/swift4/default --generate-alias-as-model $@"
 
 java $JAVA_OPTS -jar $executable $ags
+
+if type "xcodegen" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/default
+  xcodegen generate
+fi
+
+if type "swiftlint" > /dev/null 2>&1; then
+  cd samples/client/petstore/swift4/default
+  swiftlint autocorrect
+fi
diff --git a/bin/swift4-test.sh b/bin/swift4-test.sh
index f43bd6e27827030bdf20329d7750f8c0bf1631d8..7bced643c41823c20ecc5b41a38e33805f65edf7 100755
--- a/bin/swift4-test.sh
+++ b/bin/swift4-test.sh
@@ -30,3 +30,13 @@ export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
 ags="generate -t modules/openapi-generator/src/main/resources/swift4 -i modules/openapi-generator/src/test/resources/2_0/swift4Test.json -g swift4 -c ./bin/swift4-test.json -o samples/client/test/swift4/default $@"
 
 java $JAVA_OPTS -jar $executable $ags
+
+if type "xcodegen" > /dev/null 2>&1; then
+  cd samples/client/test/swift4/default
+  xcodegen generate
+fi
+
+if type "swiftlint" > /dev/null 2>&1; then
+  cd samples/client/test/swift4/default
+  swiftlint autocorrect
+fi
diff --git a/bin/typescript-fetch-petstore-all.sh b/bin/typescript-fetch-petstore-all.sh
index 27cd5f104b0cabb9d39b051220b329c9045939e4..5611d4c6eb4080c41b7c612d0094718c15b14d7d 100755
--- a/bin/typescript-fetch-petstore-all.sh
+++ b/bin/typescript-fetch-petstore-all.sh
@@ -4,3 +4,4 @@
 ./bin/typescript-fetch-petstore-with-npm-version.sh
 ./bin/typescript-fetch-petstore-interfaces.sh
 ./bin/typescript-fetch-petstore.sh
+./bin/typescript-fetch-petstore-multiple-parameters.sh
\ No newline at end of file
diff --git a/bin/typescript-fetch-petstore-multiple-parameters.json b/bin/typescript-fetch-petstore-multiple-parameters.json
new file mode 100644
index 0000000000000000000000000000000000000000..c165a82a503e7fa46b9401d924297fceff035001
--- /dev/null
+++ b/bin/typescript-fetch-petstore-multiple-parameters.json
@@ -0,0 +1,4 @@
+{
+  "snapshot" : false,
+  "useSingleRequestParameter": false
+}
\ No newline at end of file
diff --git a/bin/typescript-fetch-petstore-multiple-parameters.sh b/bin/typescript-fetch-petstore-multiple-parameters.sh
new file mode 100755
index 0000000000000000000000000000000000000000..6dfa018ef3772c8c843dd0fe7ca7c3c81bf41844
--- /dev/null
+++ b/bin/typescript-fetch-petstore-multiple-parameters.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+SCRIPT="$0"
+echo "# START SCRIPT: $SCRIPT"
+
+while [ -h "$SCRIPT" ] ; do
+  ls=`ls -ld "$SCRIPT"`
+  link=`expr "$ls" : '.*-> \(.*\)$'`
+  if expr "$link" : '/.*' > /dev/null; then
+    SCRIPT="$link"
+  else
+    SCRIPT=`dirname "$SCRIPT"`/"$link"
+  fi
+done
+
+if [ ! -d "${APP_DIR}" ]; then
+  APP_DIR=`dirname "$SCRIPT"`/..
+  APP_DIR=`cd "${APP_DIR}"; pwd`
+fi
+
+executable="./modules/openapi-generator-cli/target/openapi-generator-cli.jar"
+
+if [ ! -f "$executable" ]
+then
+  mvn -B clean package
+fi
+
+# if you've executed sbt assembly previously it will use that instead.
+export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties"
+ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g typescript-fetch -c bin/typescript-fetch-petstore-multiple-parameters.json -o samples/client/petstore/typescript-fetch/builds/multiple-parameters $@"
+
+java $JAVA_OPTS -jar $executable $ags
+cp CI/samples.ci/client/petstore/typescript-fetch/builds/multiple-parameters/pom.xml samples/client/petstore/typescript-fetch/builds/multiple-parameters/pom.xml
+cp CI/samples.ci/client/petstore/typescript-fetch/tests/default/pom.xml samples/client/petstore/typescript-fetch/tests/default/pom.xml
\ No newline at end of file
diff --git a/bin/windows/typescript-fetch-petstore-all.bat b/bin/windows/typescript-fetch-petstore-all.bat
index 69af38cf6a25fbb5c2212c7375bd9ec0d449b619..c07605f175b962ec90edaacbe7487d973ae846a0 100644
--- a/bin/windows/typescript-fetch-petstore-all.bat
+++ b/bin/windows/typescript-fetch-petstore-all.bat
@@ -4,3 +4,4 @@ call bin\windows\typescript-fetch-petstore.bat
 call bin\windows\typescript-fetch-petstore-target-es6.bat
 call bin\windows\typescript-fetch-petstore-with-npm-version.bat
 call bin\windows\typescript-fetch-petstore-interfaces.bat
+call bin\windows\typescript-fetch-petstore-multiple-parameters.bat
diff --git a/bin/windows/typescript-fetch-petstore-multiple-parameters.bat b/bin/windows/typescript-fetch-petstore-multiple-parameters.bat
new file mode 100644
index 0000000000000000000000000000000000000000..095fdb3e5d66db1fc71438aab01abc1d46897f44
--- /dev/null
+++ b/bin/windows/typescript-fetch-petstore-multiple-parameters.bat
@@ -0,0 +1,12 @@
+@ECHO OFF
+
+set executable=.\modules\openapi-generator-cli\target\openapi-generator-cli.jar
+
+If Not Exist %executable% (
+  mvn clean package
+)
+
+REM set JAVA_OPTS=%JAVA_OPTS% -Xmx1024M
+set ags=generate -i modules\openapi-generator\src\test\resources\2_0\petstore.yaml -g typescript-fetch -c bin\typescript-fetch-petstore-multiple-parameters.json -o samples\client\petstore\typescript-fetch\builds\multiple-parameters
+
+java %JAVA_OPTS% -jar %executable% %ags%
diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh
index 4decc3de6490e85690008e99134749943b3b6d10..3b993a1be33e7546e97092b62298e67a64ca1642 100755
--- a/docker-entrypoint.sh
+++ b/docker-entrypoint.sh
@@ -19,7 +19,7 @@ if [[ -f "${codegen}" && -n "$(java ${JAVA_OPTS} -jar "${codegen}" completion |
     command=$1
     shift
     exec java ${JAVA_OPTS} -jar "${codegen}" "${command}" "$@"
-elif [[ -n "$(echo commands | tr ',' '\n' | grep "^$1\$" )" ]]; then
+elif [[ -n "$(echo $commands | tr ',' '\n' | grep "^$1\$" )" ]]; then
     # If CLI jar does not exist, and $1 is a known CLI command, build the CLI jar and run that command.
     if [[ ! -f "${codegen}" ]]; then
         (cd "${GEN_DIR}" && exec mvn -am -pl "modules/openapi-generator-cli" -Duser.home=$(dirname $MAVEN_CONFIG) package)
diff --git a/docs/debugging.md b/docs/debugging.md
index 99c47c658ea0d49cb1fd42b09d728312be4c42c5..783a6012bec36387e13be190e994ecc87ee745a0 100644
--- a/docs/debugging.md
+++ b/docs/debugging.md
@@ -62,3 +62,26 @@ The steps are shown here for a specific version of the generator, but apply the
   Listening for transport dt_socket at address: 5005
   ```
 * Set breakpoints in code, and then attach your remote debugger from your IDE (see above). The generator will automatically unblock once the remote debugger is attached. You can now step through the code.
+
+## Logs
+
+You can try to enable debugging log with `-Dlog.level=debug` option to the `JAVA_OPTS` environment variable to see more information:
+
+```bash
+export JAVA_OPTS="${JAVA_OPTS} -Dlog.level=debug"
+```
+
+Set the option then DEBUG logs are printed out:
+
+```bash
+openapi-generator generate -g go ...
+
+...
+...
+[main] DEBUG o.o.codegen.DefaultCodegen - debugging fromProperty for files : class Schema {
+    type: null
+    format: null
+    $ref: #/components/schemas/File
+...
+...
+```
diff --git a/docs/generators/typescript-fetch.md b/docs/generators/typescript-fetch.md
index 1ccb820eeeae456b0ae04f202aa415e36af62970..af45a951615e5355357e200182306e8b764e5f8c 100644
--- a/docs/generators/typescript-fetch.md
+++ b/docs/generators/typescript-fetch.md
@@ -18,3 +18,4 @@ sidebar_label: typescript-fetch
 |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false|
 |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null|
 |withInterfaces|Setting this property to true will generate interfaces next to the default class implementations.| |false|
+|useSingleRequestParameter|Setting this property to true will generate functions with a single argument containing all API endpoint parameters instead of one argument per parameter.| |true|
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java
index 5373b99e934ddf7292f3878889c63e13548b5794..639f8448c3f2d332e2b0dd5245cf1edbee9e59e0 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java
@@ -19,7 +19,11 @@ package org.openapitools.codegen;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.google.common.base.CaseFormat;
+import com.google.common.collect.ImmutableMap;
+import com.samskivert.mustache.Mustache;
 import com.samskivert.mustache.Mustache.Compiler;
+import com.samskivert.mustache.Mustache.Lambda;
+
 import io.swagger.v3.core.util.Json;
 import io.swagger.v3.oas.models.OpenAPI;
 import io.swagger.v3.oas.models.Operation;
@@ -48,6 +52,11 @@ import org.openapitools.codegen.meta.GeneratorMetadata;
 import org.openapitools.codegen.meta.Stability;
 import org.openapitools.codegen.serializer.SerializerUtils;
 import org.openapitools.codegen.templating.MustacheEngineAdapter;
+import org.openapitools.codegen.templating.mustache.CamelCaseLambda;
+import org.openapitools.codegen.templating.mustache.IndentedLambda;
+import org.openapitools.codegen.templating.mustache.LowercaseLambda;
+import org.openapitools.codegen.templating.mustache.TitlecaseLambda;
+import org.openapitools.codegen.templating.mustache.UppercaseLambda;
 import org.openapitools.codegen.utils.ModelUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -199,6 +208,47 @@ public class DefaultCodegen implements CodegenConfig {
         }
     }
 
+    /***
+     * Preset map builder with commonly used Mustache lambdas.
+     *
+     * To extend the map, override addMustacheLambdas(), call parent method
+     * first and then add additional lambdas to the returned builder.
+     *
+     * If common lambdas are not desired, override addMustacheLambdas() method
+     * and return empty builder.
+     *
+     * @return preinitialized map builder with common lambdas
+     */
+    protected ImmutableMap.Builder<String, Lambda> addMustacheLambdas() {
+
+        return new ImmutableMap.Builder<String, Mustache.Lambda>()
+                .put("lowercase", new LowercaseLambda().generator(this))
+                .put("uppercase", new UppercaseLambda())
+                .put("titlecase", new TitlecaseLambda())
+                .put("camelcase", new CamelCaseLambda().generator(this))
+                .put("indented", new IndentedLambda())
+                .put("indented_8", new IndentedLambda(8, " "))
+                .put("indented_12", new IndentedLambda(12, " "))
+                .put("indented_16", new IndentedLambda(16, " "));
+    }
+
+    private void registerMustacheLambdas() {
+        ImmutableMap<String, Lambda> lambdas = addMustacheLambdas().build();
+
+        if (lambdas.size() == 0) {
+            return;
+        }
+
+        if (additionalProperties.containsKey("lambda")) {
+            LOGGER.warn("A property named 'lambda' already exists. Mustache lambdas renamed from 'lambda' to '_lambda'. " +
+                    "You'll likely need to use a custom template, " +
+                    "see https://github.com/OpenAPITools/openapi-generator/blob/master/docs/templating.md. ");
+            additionalProperties.put("_lambda", lambdas);
+        } else {
+            additionalProperties.put("lambda", lambdas);
+        }
+    }
+
     // override with any special post-processing for all models
     @SuppressWarnings({"static-method", "unchecked"})
     public Map<String, Object> postProcessAllModels(Map<String, Object> objs) {
@@ -1060,6 +1110,9 @@ public class DefaultCodegen implements CodegenConfig {
 
         // initialize special character mapping
         initalizeSpecialCharacterMapping();
+
+        // Register common Mustache lambdas.
+        registerMustacheLambdas();
     }
 
     /**
@@ -1523,7 +1576,7 @@ public class DefaultCodegen implements CodegenConfig {
                 // If the format matches a typeMapping (supplied with the --typeMappings flag)
                 // then treat the format as a primitive type.
                 // This allows the typeMapping flag to add a new custom type which can then
-                // be used in the format field.   
+                // be used in the format field.
                 return schema.getFormat();
             }
             return "string";
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java
index 4c251ffc4a0c3fd1d879b255355794a0799325d5..88f2a5489896d94f34f2ef547ee11ea29a171f67 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java
@@ -223,6 +223,7 @@ public class CodegenConfigurator {
     }
 
     public CodegenConfigurator setImportMappings(Map<String, String> importMappings) {
+        this.importMappings = importMappings;
         generatorSettingsBuilder.withImportMappings(importMappings);
         return this;
     }
@@ -234,6 +235,7 @@ public class CodegenConfigurator {
     }
 
     public CodegenConfigurator setInstantiationTypes(Map<String, String> instantiationTypes) {
+        this.instantiationTypes = instantiationTypes;
         generatorSettingsBuilder.withInstantiationTypes(instantiationTypes);
         return this;
     }
@@ -295,6 +297,7 @@ public class CodegenConfigurator {
     }
 
     public CodegenConfigurator setReservedWordsMappings(Map<String, String> reservedWordMappings) {
+        this.reservedWordMappings = reservedWordMappings;
         generatorSettingsBuilder.withReservedWordMappings(reservedWordMappings);
         return this;
     }
@@ -310,6 +313,7 @@ public class CodegenConfigurator {
     }
 
     public CodegenConfigurator setSystemProperties(Map<String, String> systemProperties) {
+        this.systemProperties = systemProperties;
         workflowSettingsBuilder.withSystemProperties(systemProperties);
         return this;
     }
@@ -326,6 +330,7 @@ public class CodegenConfigurator {
     }
 
     public CodegenConfigurator setTypeMappings(Map<String, String> typeMappings) {
+        this.typeMappings = typeMappings;
         generatorSettingsBuilder.withTypeMappings(typeMappings);
         return this;
     }
@@ -454,6 +459,12 @@ public class CodegenConfigurator {
         config.reservedWordsMappings().putAll(generatorSettings.getReservedWordMappings());
         config.additionalProperties().putAll(generatorSettings.getAdditionalProperties());
 
+        // any other additional properties?
+        String templateDir = workflowSettings.getTemplateDir();
+        if (templateDir != null) {
+            config.additionalProperties().put(CodegenConstants.TEMPLATE_DIR, workflowSettings.getTemplateDir());
+        }
+
         ClientOptInput input = new ClientOptInput()
                 .config(config);
 
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java
index 1e7a454007f87c69441332e97267f0097426f8a1..d39c6c07ab47aae6caae6c6b35b51b8781e7ec4d 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java
@@ -17,8 +17,9 @@
 
 package org.openapitools.codegen.languages;
 
-import com.google.common.collect.ImmutableMap;
-import com.samskivert.mustache.Mustache;
+import com.google.common.collect.ImmutableMap.Builder;
+import com.samskivert.mustache.Mustache.Lambda;
+
 import io.swagger.v3.core.util.Json;
 import io.swagger.v3.oas.models.media.ArraySchema;
 import io.swagger.v3.oas.models.media.Schema;
@@ -359,32 +360,12 @@ public abstract class AbstractCSharpCodegen extends DefaultCodegen implements Co
 
         // This either updates additionalProperties with the above fixes, or sets the default if the option was not specified.
         additionalProperties.put(CodegenConstants.INTERFACE_PREFIX, interfacePrefix);
-
-        addMustacheLambdas(additionalProperties);
     }
 
-    private void addMustacheLambdas(Map<String, Object> objs) {
-
-        Map<String, Mustache.Lambda> lambdas = new ImmutableMap.Builder<String, Mustache.Lambda>()
-                .put("lowercase", new LowercaseLambda().generator(this))
-                .put("uppercase", new UppercaseLambda())
-                .put("titlecase", new TitlecaseLambda())
-                .put("camelcase", new CamelCaseLambda().generator(this))
-                .put("camelcase_param", new CamelCaseLambda().generator(this).escapeAsParamName(true))
-                .put("indented", new IndentedLambda())
-                .put("indented_8", new IndentedLambda(8, " "))
-                .put("indented_12", new IndentedLambda(12, " "))
-                .put("indented_16", new IndentedLambda(16, " "))
-                .build();
-
-        if (objs.containsKey("lambda")) {
-            LOGGER.warn("A property named 'lambda' already exists. Mustache lambdas renamed from 'lambda' to '_lambda'. " +
-                    "You'll likely need to use a custom template, " +
-                    "see https://github.com/swagger-api/swagger-codegen#modifying-the-client-library-format. ");
-            objs.put("_lambda", lambdas);
-        } else {
-            objs.put("lambda", lambdas);
-        }
+    @Override
+    protected Builder<String, Lambda> addMustacheLambdas() {
+        return super.addMustacheLambdas()
+                .put("camelcase_param", new CamelCaseLambda().generator(this).escapeAsParamName(true));
     }
 
     @Override
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCppCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCppCodegen.java
index 65105e467a869c183d83554517d7bbe42a60c43b..afbbae668485837883f5d945336441f6feaf2874 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCppCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCppCodegen.java
@@ -17,8 +17,8 @@
 
 package org.openapitools.codegen.languages;
 
-import com.google.common.collect.ImmutableMap;
-import com.samskivert.mustache.Mustache;
+import com.google.common.collect.ImmutableMap.Builder;
+import com.samskivert.mustache.Mustache.Lambda;
 
 import io.swagger.v3.oas.models.OpenAPI;
 import io.swagger.v3.oas.models.media.Schema;
@@ -35,7 +35,6 @@ import org.slf4j.LoggerFactory;
 import java.io.File;
 import java.net.URL;
 import java.util.Arrays;
-import java.util.Map;
 
 abstract public class AbstractCppCodegen extends DefaultCodegen implements CodegenConfig {
     private static final Logger LOGGER = LoggerFactory.getLogger(AbstractCppCodegen.class);
@@ -260,22 +259,12 @@ abstract public class AbstractCppCodegen extends DefaultCodegen implements Codeg
             LOGGER.info("Environment variable CPP_POST_PROCESS_FILE not defined so the C++ code may not be properly formatted. To define it, try 'export CPP_POST_PROCESS_FILE=\"/usr/local/bin/clang-format -i\"' (Linux/Mac)");
             LOGGER.info("NOTE: To enable file post-processing, 'enablePostProcessFile' must be set to `true` (--enable-post-process-file for CLI).");
         }
-
-        addMustacheLambdas(additionalProperties);
     }
 
-    private void addMustacheLambdas(Map<String, Object> objs) {
-
-        Map<String, Mustache.Lambda> lambdas = new ImmutableMap.Builder<String, Mustache.Lambda>()
-                .put("multiline_comment_4", new IndentedLambda(4, " ", "///"))
-                .build();
-
-        if (objs.containsKey("lambda")) {
-            LOGGER.warn("A property named 'lambda' already exists. Mustache lambdas renamed from 'lambda' to '_lambda'.");
-            objs.put("_lambda", lambdas);
-        } else {
-            objs.put("lambda", lambdas);
-        }
+    @Override
+    protected Builder<String, Lambda> addMustacheLambdas() {
+        return super.addMustacheLambdas()
+                .put("multiline_comment_4", new IndentedLambda(4, " ", "///"));
     }
 
     @Override
@@ -304,17 +293,17 @@ abstract public class AbstractCppCodegen extends DefaultCodegen implements Codeg
             }
         }
     }
-    
+
     @Override
     public void preprocessOpenAPI(OpenAPI openAPI) {
         URL url = URLPathUtils.getServerURL(openAPI);
         String port = URLPathUtils.getPort(url, "");
         String host = url.getHost();
         if(!port.isEmpty()) {
-            this.additionalProperties.put("serverPort", port);          
+            this.additionalProperties.put("serverPort", port);
         }
         if(!host.isEmpty()) {
-            this.additionalProperties.put("serverHost", host);          
-        }        
+            this.additionalProperties.put("serverHost", host);
+        }
     }
 }
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java
index 9d82448ffb3b399850efbbef4c6fff71317c7b5b..04a626eac774a38a925fec9d5dc225dc6dfc5b50 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java
@@ -16,8 +16,9 @@
 
 package org.openapitools.codegen.languages;
 
-import com.google.common.collect.ImmutableMap;
-import com.samskivert.mustache.Mustache;
+import com.google.common.collect.ImmutableMap.Builder;
+import com.samskivert.mustache.Mustache.Lambda;
+
 import io.swagger.v3.core.util.Json;
 import io.swagger.v3.oas.models.media.ArraySchema;
 import io.swagger.v3.oas.models.media.Schema;
@@ -67,7 +68,7 @@ public abstract class AbstractFSharpCodegen extends DefaultCodegen implements Co
     protected Set<String> collectionTypes;
     protected Set<String> mapTypes;
 
-    // true if nullable types will be supported (as option) 
+    // true if nullable types will be supported (as option)
     protected boolean supportNullable = Boolean.TRUE;
 
     protected Set<String> nullableType = new HashSet<String>();
@@ -329,32 +330,12 @@ public abstract class AbstractFSharpCodegen extends DefaultCodegen implements Co
 
         // This either updates additionalProperties with the above fixes, or sets the default if the option was not specified.
         additionalProperties.put(CodegenConstants.INTERFACE_PREFIX, interfacePrefix);
-
-        addMustacheLambdas(additionalProperties);
     }
 
-    private void addMustacheLambdas(Map<String, Object> objs) {
-
-        Map<String, Mustache.Lambda> lambdas = new ImmutableMap.Builder<String, Mustache.Lambda>()
-                .put("lowercase", new LowercaseLambda().generator(this))
-                .put("uppercase", new UppercaseLambda())
-                .put("titlecase", new TitlecaseLambda())
-                .put("camelcase", new CamelCaseLambda().generator(this))
-                .put("camelcase_param", new CamelCaseLambda().generator(this).escapeAsParamName(true))
-                .put("indented", new IndentedLambda())
-                .put("indented_8", new IndentedLambda(8, " "))
-                .put("indented_12", new IndentedLambda(12, " "))
-                .put("indented_16", new IndentedLambda(16, " "))
-                .build();
-
-        if (objs.containsKey("lambda")) {
-            LOGGER.warn("A property named 'lambda' already exists. Mustache lambdas renamed from 'lambda' to '_lambda'. " +
-                    "You'll likely need to use a custom template, " +
-                    "see https://github.com/swagger-api/swagger-codegen#modifying-the-client-library-format. ");
-            objs.put("_lambda", lambdas);
-        } else {
-            objs.put("lambda", lambdas);
-        }
+    @Override
+    protected Builder<String, Lambda> addMustacheLambdas() {
+        return super.addMustacheLambdas()
+                .put("camelcase_param", new CamelCaseLambda().generator(this).escapeAsParamName(true));
     }
 
     @Override
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GoClientExperimentalCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GoClientExperimentalCodegen.java
index 14148714e64f25e443d6788766e5850e538c64bb..ff0aafe24cbf7f42912e1e8dde5624bcf910951d 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GoClientExperimentalCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/GoClientExperimentalCodegen.java
@@ -16,15 +16,23 @@
 
 package org.openapitools.codegen.languages;
 
+import org.openapitools.codegen.CodegenModel;
+import org.openapitools.codegen.CodegenProperty;
+import org.openapitools.codegen.SupportingFile;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.util.List;
+import java.util.Map;
+
 public class GoClientExperimentalCodegen extends GoClientCodegen {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(GoClientExperimentalCodegen.class);
 
     public GoClientExperimentalCodegen() {
         super();
+        outputFolder = "generated-code/go-experimental";
+        embeddedTemplateDir = templateDir = "go-experimental";
     }
 
     /**
@@ -49,4 +57,35 @@ public class GoClientExperimentalCodegen extends GoClientCodegen {
         return "Generates a Go client library (experimental and may subject to breaking changes without further notice).";
     }
 
+    @Override
+    public void processOpts() {
+        super.processOpts();
+        supportingFiles.add(new SupportingFile("utils.mustache", "", "utils.go"));
+    }
+
+    @Override
+     public Map<String, Object> postProcessModels(Map<String, Object> objs) {
+        objs = super.postProcessModels(objs);
+        List<Map<String, String>> imports = (List<Map<String, String>>) objs.get("imports");
+
+        boolean addedErrorsImport = false;
+        List<Map<String, Object>> models = (List<Map<String, Object>>) objs.get("models");
+        for (Map<String, Object> m : models) {
+            Object v = m.get("model");
+            if (v instanceof CodegenModel) {
+                CodegenModel model = (CodegenModel) v;
+                if (!model.isEnum) {
+                    imports.add(createMapping("import", "encoding/json"));
+                }
+                for (CodegenProperty param : model.vars) {
+                    if (!addedErrorsImport && param.required) {
+                        imports.add(createMapping("import", "errors"));
+                        addedErrorsImport = true;
+                    }
+                }
+            }
+        }
+
+        return objs;
+    }
 }
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java
index 80e48bf0bc02512da078cce2dd6abd76fd4d633b..4bd48eb2188e7fc27b35a1716e3cad251d25e337 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java
@@ -18,13 +18,11 @@
 package org.openapitools.codegen.languages;
 
 import com.google.common.collect.ImmutableMap;
-import com.samskivert.mustache.Mustache;
 import org.apache.commons.lang3.StringUtils;
 import org.openapitools.codegen.CliOption;
 import org.openapitools.codegen.CodegenConstants;
 import org.openapitools.codegen.CodegenType;
 import org.openapitools.codegen.SupportingFile;
-import org.openapitools.codegen.templating.mustache.*;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -211,31 +209,6 @@ public class KotlinServerCodegen extends AbstractKotlinCodegen {
         final String infrastructureFolder = (sourceFolder + File.separator + packageName + File.separator + "infrastructure").replace(".", File.separator);
 
         supportingFiles.add(new SupportingFile("ApiKeyAuth.kt.mustache", infrastructureFolder, "ApiKeyAuth.kt"));
-
-        addMustacheLambdas(additionalProperties);
-    }
-
-    private void addMustacheLambdas(Map<String, Object> objs) {
-
-        Map<String, Mustache.Lambda> lambdas = new ImmutableMap.Builder<String, Mustache.Lambda>()
-                .put("lowercase", new LowercaseLambda().generator(this))
-                .put("uppercase", new UppercaseLambda())
-                .put("titlecase", new TitlecaseLambda())
-                .put("camelcase", new CamelCaseLambda().generator(this))
-                .put("indented", new IndentedLambda())
-                .put("indented_8", new IndentedLambda(8, " "))
-                .put("indented_12", new IndentedLambda(12, " "))
-                .put("indented_16", new IndentedLambda(16, " "))
-                .build();
-
-        if (objs.containsKey("lambda")) {
-            LOGGER.warn("A property named 'lambda' already exists. Mustache lambdas renamed from 'lambda' to '_lambda'. " +
-                    "You'll likely need to use a custom template, " +
-                    "see https://github.com/OpenAPITools/openapi-generator/blob/master/docs/templating.md. ");
-            objs.put("_lambda", lambdas);
-        } else {
-            objs.put("lambda", lambdas);
-        }
     }
 
     public static class Constants {
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java
index 28e45eb7af4d2bdbc5f80b53a90e6682e39732e5..36c99c39a7088d46abd8d47f00e1ff8ddf3962e2 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java
@@ -16,9 +16,11 @@
 
 package org.openapitools.codegen.languages;
 
-import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.ImmutableMap.Builder;
 import com.samskivert.mustache.Mustache;
 import com.samskivert.mustache.Template;
+import com.samskivert.mustache.Mustache.Lambda;
+
 import io.swagger.v3.oas.models.OpenAPI;
 import io.swagger.v3.oas.models.media.Schema;
 import org.openapitools.codegen.*;
@@ -51,7 +53,6 @@ public class KotlinSpringServerCodegen extends AbstractKotlinCodegen
             ));
 
     public static final String TITLE = "title";
-    public static final String LAMBDA = "lambda";
     public static final String SERVER_PORT = "serverPort";
     public static final String BASE_PACKAGE = "basePackage";
     public static final String SPRING_BOOT = "spring-boot";
@@ -370,22 +371,14 @@ public class KotlinSpringServerCodegen extends AbstractKotlinCodegen
                     sanitizeDirectory(sourceFolder + File.separator + basePackage), "Application.kt"));
         }
 
-        addMustacheLambdas(additionalProperties);
-
         // spring uses the jackson lib, and we disallow configuration.
         additionalProperties.put("jackson", "true");
     }
 
-    private void addMustacheLambdas(final Map<String, Object> objs) {
-        Map<String, Mustache.Lambda> lambdas =
-                new ImmutableMap.Builder<String, Mustache.Lambda>()
-                        .put("escapeDoubleQuote", new EscapeLambda("\"", "\\\""))
-                        .build();
-
-        if (objs.containsKey(LAMBDA)) {
-            LOGGER.warn("The lambda property is a reserved word, and will be overwritten!");
-        }
-        objs.put(LAMBDA, lambdas);
+    @Override
+    protected Builder<String, Lambda> addMustacheLambdas() {
+        return super.addMustacheLambdas()
+                .put("escapeDoubleQuote", new EscapeLambda("\"", "\\\""));
     }
 
     @Override
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java
index d89fb863fa8ec052a61eea19a36436aefb7e6025..4efb64e61d18cddbe7e93c8f292e562d35592cf5 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java
@@ -93,7 +93,6 @@ public class NodeJSExpressServerCodegen extends DefaultCodegen implements Codege
         supportingFiles.add(new SupportingFile("utils" + File.separator + "writer.mustache", "utils", "writer.js"));
 
         // controllers folder
-        supportingFiles.add(new SupportingFile("controllers" + File.separator + "test.mustache", "controllers", "TestController.js"));
         supportingFiles.add(new SupportingFile("controllers" + File.separator + "index.mustache", "controllers", "index.js"));
         supportingFiles.add(new SupportingFile("controllers" + File.separator + "Controller.mustache", "controllers", "Controller.js"));
         // service folder
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIYamlGenerator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIYamlGenerator.java
index 5c46567fd940b631418e116906105c80d4f56029..ca1e91026643f347a767922a59b181e628d17280 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIYamlGenerator.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIYamlGenerator.java
@@ -18,21 +18,15 @@
 package org.openapitools.codegen.languages;
 
 import org.openapitools.codegen.*;
-import org.openapitools.codegen.templating.mustache.CamelCaseLambda;
-import org.openapitools.codegen.templating.mustache.IndentedLambda;
-import org.openapitools.codegen.templating.mustache.LowercaseLambda;
-import org.openapitools.codegen.templating.mustache.TitlecaseLambda;
-import org.openapitools.codegen.templating.mustache.UppercaseLambda;
+import org.openapitools.codegen.templating.mustache.OnChangeLambda;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.collect.ImmutableMap;
-import com.samskivert.mustache.Mustache;
-import com.samskivert.mustache.Template;
+import com.google.common.collect.ImmutableMap.Builder;
+import com.samskivert.mustache.Mustache.Lambda;
+
 import io.swagger.v3.oas.models.Operation;
 
-import java.io.IOException;
-import java.io.Writer;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -75,32 +69,12 @@ public class OpenAPIYamlGenerator extends DefaultCodegen implements CodegenConfi
         }
         LOGGER.info("Output file [outputFile={}]", outputFile);
         supportingFiles.add(new SupportingFile("openapi.mustache", outputFile));
-
-        addMustacheLambdas(additionalProperties);
     }
 
-    private void addMustacheLambdas(Map<String, Object> objs) {
-
-        Map<String, Mustache.Lambda> lambdas = new ImmutableMap.Builder<String, Mustache.Lambda>()
-                .put("lowercase", new LowercaseLambda().generator(this))
-                .put("uppercase", new UppercaseLambda())
-                .put("titlecase", new TitlecaseLambda())
-                .put("camelcase", new CamelCaseLambda().generator(this))
-                .put("indented", new IndentedLambda())
-                .put("indented_8", new IndentedLambda(8, " "))
-                .put("indented_12", new IndentedLambda(12, " "))
-                .put("indented_16", new IndentedLambda(16, " "))
-                .put("onchange",  new OnChangeLambda())
-                .build();
-
-        if (objs.containsKey("lambda")) {
-            LOGGER.warn("A property named 'lambda' already exists. Mustache lambdas renamed from 'lambda' to '_lambda'. " +
-                    "You'll likely need to use a custom template, " +
-                    "see https://github.com/OpenAPITools/openapi-generator/blob/master/docs/templating.md. ");
-            objs.put("_lambda", lambdas);
-        } else {
-            objs.put("lambda", lambdas);
-        }
+    @Override
+    protected Builder<String, Lambda> addMustacheLambdas() {
+        return super.addMustacheLambdas()
+                .put("onchange", new OnChangeLambda());
     }
 
     /**
@@ -133,24 +107,4 @@ public class OpenAPIYamlGenerator extends DefaultCodegen implements CodegenConfi
         return input;
     }
 
-    /**
-     * Lambda writes current fragment to the output when it is different than
-     * previous fragment.
-     */
-    public static class OnChangeLambda implements Mustache.Lambda {
-        private static final Logger LOGGER = LoggerFactory.getLogger(OnChangeLambda.class);
-
-        private String lastVal = null;
-
-        @Override
-        public void execute(Template.Fragment frag, Writer out) throws IOException {
-            String curVal = frag.execute();
-            LOGGER.debug("[lastVal={}, curVal={}]", lastVal, curVal);
-            if (curVal != null && !curVal.equals(lastVal)) {
-                out.write(curVal);
-                lastVal = curVal;
-            }
-        }
-    }
-
 }
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java
index 6bd358bd2345adae3e7884b3727623775e1ab9f9..ad2c260cac192e1240c172544f41f90b4003ed81 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java
@@ -124,9 +124,9 @@ public class RustClientCodegen extends DefaultCodegen implements CodegenConfig {
         // I tried to map as "std::io::File", but Reqwest multipart file requires a "AsRef<Path>" param.
         // Getting a file from a Path is simple, but the opposite is difficult. So I map as "std::path::Path".
         typeMapping.put("file", "std::path::PathBuf");
-        typeMapping.put("binary", "::models::File");
+        typeMapping.put("binary", "crate::models::File");
         typeMapping.put("ByteArray", "String");
-        typeMapping.put("object", "Value");
+        typeMapping.put("object", "serde_json::Value");
 
         // no need for rust
         //importMapping = new HashMap<String, String>();
@@ -352,8 +352,8 @@ public class RustClientCodegen extends DefaultCodegen implements CodegenConfig {
         }
 
         // return fully-qualified model name
-        // ::models::{{classnameFile}}::{{classname}}
-        return "::models::" + toModelName(schemaType);
+        // crate::models::{{classnameFile}}::{{classname}}
+        return "crate::models::" + toModelName(schemaType);
     }
 
     @Override
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ScalaPlayFrameworkServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ScalaPlayFrameworkServerCodegen.java
index a30f0bd7972ccef8029ed5dfacccb3b0e64ca319..1f02cc989f4d662d4aba20a96d7e64b77a6ba64f 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ScalaPlayFrameworkServerCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ScalaPlayFrameworkServerCodegen.java
@@ -16,8 +16,9 @@
 
 package org.openapitools.codegen.languages;
 
-import com.google.common.collect.ImmutableMap;
-import com.samskivert.mustache.Mustache;
+import com.google.common.collect.ImmutableMap.Builder;
+import com.samskivert.mustache.Mustache.Lambda;
+
 import io.swagger.v3.oas.models.media.ArraySchema;
 import io.swagger.v3.oas.models.media.Schema;
 import org.openapitools.codegen.*;
@@ -192,15 +193,12 @@ public class ScalaPlayFrameworkServerCodegen extends AbstractScalaCodegen implem
             supportingFiles.add(new SupportingFile("public/openapi.json.mustache", "public", "openapi.json"));
             supportingFiles.add(new SupportingFile("app/apiDocController.scala.mustache", String.format(Locale.ROOT, "app/%s", apiPackage.replace(".", File.separator)), "ApiDocController.scala"));
         }
-        addMustacheLambdas(additionalProperties);
     }
 
-    private void addMustacheLambdas(Map<String, Object> objs) {
-        Map<String, Mustache.Lambda> lambdas = new ImmutableMap.Builder<String, Mustache.Lambda>()
-                .put("indented_4", new IndentedLambda(4, " "))
-                .put("indented_8", new IndentedLambda(8, " "))
-                .build();
-        objs.put("lambda", lambdas);
+    @Override
+    protected Builder<String, Lambda> addMustacheLambdas() {
+        return super.addMustacheLambdas()
+                .put("indented_4", new IndentedLambda(4, " "));
     }
 
     @SuppressWarnings("unchecked")
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift4Codegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift4Codegen.java
index b78891af4f21c0723813bf33a972bc99a6cb314e..1422504281fdfcf36abe870c582d3a891b65c838 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift4Codegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift4Codegen.java
@@ -421,6 +421,9 @@ public class Swift4Codegen extends DefaultCodegen implements CodegenConfig {
         supportingFiles.add(new SupportingFile("README.mustache",
                 "",
                 "README.md"));
+        supportingFiles.add(new SupportingFile("XcodeGen.mustache",
+                "",
+                "project.yml"));
 
     }
 
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java
index 4d80efd6a703df08af5500041388478958952b94..f663409561046bf0724f0ea57bc5d62093df9518 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptFetchClientCodegen.java
@@ -24,19 +24,21 @@ import org.openapitools.codegen.*;
 import org.openapitools.codegen.utils.ModelUtils;
 
 import java.io.File;
-import java.text.SimpleDateFormat;
 import java.util.TreeSet;
-import java.util.Date;
 import java.util.List;
-import java.util.Locale;
 import java.util.Map;
 
 public class TypeScriptFetchClientCodegen extends AbstractTypeScriptClientCodegen {
 
     public static final String NPM_REPOSITORY = "npmRepository";
     public static final String WITH_INTERFACES = "withInterfaces";
+    public static final String USE_SINGLE_REQUEST_PARAMETER = "useSingleRequestParameter";
 
     protected String npmRepository = null;
+    private boolean useSingleRequestParameter = true;
+    protected boolean addedApiIndex = false;
+    protected boolean addedModelIndex = false;
+
 
     public TypeScriptFetchClientCodegen() {
         super();
@@ -56,6 +58,7 @@ public class TypeScriptFetchClientCodegen extends AbstractTypeScriptClientCodege
 
         this.cliOptions.add(new CliOption(NPM_REPOSITORY, "Use this property to set an url your private npmRepo in the package.json"));
         this.cliOptions.add(new CliOption(WITH_INTERFACES, "Setting this property to true will generate interfaces next to the default class implementations.", SchemaTypeUtil.BOOLEAN_TYPE).defaultValue(Boolean.FALSE.toString()));
+        this.cliOptions.add(new CliOption(USE_SINGLE_REQUEST_PARAMETER, "Setting this property to true will generate functions with a single argument containing all API endpoint parameters instead of one argument per parameter.", SchemaTypeUtil.BOOLEAN_TYPE).defaultValue(Boolean.TRUE.toString()));
     }
 
     @Override
@@ -83,10 +86,14 @@ public class TypeScriptFetchClientCodegen extends AbstractTypeScriptClientCodege
         additionalProperties.put("modelPropertyNaming", getModelPropertyNaming());
         supportingFiles.add(new SupportingFile("index.mustache", "", "index.ts"));
         supportingFiles.add(new SupportingFile("runtime.mustache", "", "runtime.ts"));
-        supportingFiles.add(new SupportingFile("apis.index.mustache", apiPackage().replace('.', File.separatorChar), "index.ts"));
-        supportingFiles.add(new SupportingFile("models.index.mustache", modelPackage().replace('.', File.separatorChar), "index.ts"));
         supportingFiles.add(new SupportingFile("tsconfig.mustache", "", "tsconfig.json"));
         supportingFiles.add(new SupportingFile("gitignore", "", ".gitignore"));
+
+        if (additionalProperties.containsKey(USE_SINGLE_REQUEST_PARAMETER)) {
+            this.setUseSingleRequestParameter(convertPropertyToBoolean(USE_SINGLE_REQUEST_PARAMETER));
+        }
+        writePropertyBack(USE_SINGLE_REQUEST_PARAMETER, getUseSingleRequestParameter());
+
         if (additionalProperties.containsKey(NPM_NAME)) {
             addNpmPackageGeneration();
         }
@@ -121,8 +128,9 @@ public class TypeScriptFetchClientCodegen extends AbstractTypeScriptClientCodege
 
     @Override
     public Map<String, Object> postProcessModels(Map<String, Object> objs) {
-        // process enum in models
         List<Object> models = (List<Object>) postProcessModelsEnum(objs).get("models");
+
+        // process enum in models
         for (Object _mo : models) {
             Map<String, Object> mo = (Map<String, Object>) _mo;
             CodegenModel cm = (CodegenModel) mo.get("model");
@@ -184,8 +192,21 @@ public class TypeScriptFetchClientCodegen extends AbstractTypeScriptClientCodege
 
     @Override
     public Map<String, Object> postProcessOperationsWithModels(Map<String, Object> operations, List<Object> allModels) {
+        // Add supporting file only if we plan to generate files in /apis
+        if (operations.size() > 0 && !addedApiIndex) {
+            addedApiIndex = true;
+            supportingFiles.add(new SupportingFile("apis.index.mustache", apiPackage().replace('.', File.separatorChar), "index.ts"));
+        }
+
+        // Add supporting file only if we plan to generate files in /models
+        if (allModels.size() > 0 && !addedModelIndex) {
+            addedModelIndex = true;
+            supportingFiles.add(new SupportingFile("models.index.mustache", modelPackage().replace('.', File.separatorChar), "index.ts"));
+        }
+
         this.addOperationModelImportInfomation(operations);
         this.updateOperationParameterEnumInformation(operations);
+        this.addOperationObjectResponseInformation(operations);
         return operations;
     }
 
@@ -218,6 +239,20 @@ public class TypeScriptFetchClientCodegen extends AbstractTypeScriptClientCodege
         operations.put("hasEnums", hasEnum);
     }
 
+    private void addOperationObjectResponseInformation(Map<String, Object> operations) {
+        // This method will modify the infomation on the operations' return type.
+        // The api template uses this infomation to know when to return a text
+        // response for a given simple response operation.
+        Map<String, Object> _operations = (Map<String, Object>) operations.get("operations");
+        List<CodegenOperation> operationList = (List<CodegenOperation>) _operations.get("operation");
+        for (CodegenOperation op : operationList) {
+            if(op.returnType == "object") {
+                op.isMapContainer = true;
+                op.returnSimpleType = false;
+            }
+        }
+    }
+
     private void addExtraReservedWords() {
         this.reservedWords.add("BASE_PATH");
         this.reservedWords.add("BaseAPI");
@@ -245,4 +280,12 @@ public class TypeScriptFetchClientCodegen extends AbstractTypeScriptClientCodege
         this.reservedWords.add("BlobApiResponse");
         this.reservedWords.add("TextApiResponse");
     }
+
+    private boolean getUseSingleRequestParameter() {
+        return useSingleRequestParameter;
+    }
+
+    private void setUseSingleRequestParameter(boolean useSingleRequestParameter) {
+        this.useSingleRequestParameter = useSingleRequestParameter;
+    }
 }
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptRxjsClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptRxjsClientCodegen.java
index f7f96501ddb0f502d8198a289b56f7493a784c92..267711f96158d4ed27706ed3c68316e420d2efc0 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptRxjsClientCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptRxjsClientCodegen.java
@@ -28,6 +28,7 @@ import java.text.SimpleDateFormat;
 import java.util.TreeSet;
 import java.util.Date;
 import java.util.List;
+import java.util.ArrayList;
 import java.util.Locale;
 import java.util.Map;
 
@@ -162,26 +163,36 @@ public class TypeScriptRxjsClientCodegen extends AbstractTypeScriptClientCodegen
     }
 
     private void addNpmPackageGeneration() {
-
         if (additionalProperties.containsKey(NPM_REPOSITORY)) {
             this.setNpmRepository(additionalProperties.get(NPM_REPOSITORY).toString());
         }
 
-        //Files for building our lib
+        // Files for building our lib
         supportingFiles.add(new SupportingFile("README.mustache", "", "README.md"));
         supportingFiles.add(new SupportingFile("package.mustache", "", "package.json"));
     }
 
     @Override
     public Map<String, Object> postProcessOperationsWithModels(Map<String, Object> operations, List<Object> allModels) {
-        this.addOperationModelImportInfomation(operations);
+        // Convert List of CodegenOperation to List of ExtendedCodegenOperation
+        Map<String, Object> _operations = (Map<String, Object>) operations.get("operations");
+        List<CodegenOperation> os = (List<CodegenOperation>) _operations.get("operation");
+        List<ExtendedCodegenOperation> newOs = new ArrayList<ExtendedCodegenOperation>();
+        for (CodegenOperation o : os) {
+            newOs.add(new ExtendedCodegenOperation(o));
+        }
+        _operations.put("operation", newOs);
+
+        this.addOperationModelImportInformation(operations);
         this.updateOperationParameterEnumInformation(operations);
+        this.addConditionalImportInformation(operations);
+
         return operations;
     }
 
-    private void addOperationModelImportInfomation(Map<String, Object> operations) {
-        // This method will add extra infomation to the operations.imports array.
-        // The api template uses this infomation to import all the required
+    private void addOperationModelImportInformation(Map<String, Object> operations) {
+        // This method will add extra information to the operations.imports array.
+        // The api template uses this information to import all the required
         // models for a given operation.
         List<Map<String, Object>> imports = (List<Map<String, Object>>) operations.get("imports");
         for (Map<String, Object> im : imports) {
@@ -190,22 +201,79 @@ public class TypeScriptRxjsClientCodegen extends AbstractTypeScriptClientCodegen
     }
 
     private void updateOperationParameterEnumInformation(Map<String, Object> operations) {
-        // This method will add extra infomation as to whether or not we have enums and
+        // This method will add extra information as to whether or not we have enums and
         // update their names with the operation.id prefixed.
         Map<String, Object> _operations = (Map<String, Object>) operations.get("operations");
-        List<CodegenOperation> operationList = (List<CodegenOperation>) _operations.get("operation");
-        boolean hasEnum = false;
-        for (CodegenOperation op : operationList) {
+        List<ExtendedCodegenOperation> operationList = (List<ExtendedCodegenOperation>) _operations.get("operation");
+        boolean hasEnums = false;
+        for (ExtendedCodegenOperation op : operationList) {
             for (CodegenParameter param : op.allParams) {
                 if (Boolean.TRUE.equals(param.isEnum)) {
-                    hasEnum = true;
+                    hasEnums = true;
                     param.datatypeWithEnum = param.datatypeWithEnum
                             .replace(param.enumName, op.operationIdCamelCase + param.enumName);
                 }
             }
         }
 
-        operations.put("hasEnums", hasEnum);
+        operations.put("hasEnums", hasEnums);
+    }
+
+    private void addConditionalImportInformation(Map<String, Object> operations) {
+        // This method will determine if there are required parameters and if there are list containers
+        Map<String, Object> _operations = (Map<String, Object>) operations.get("operations");
+        List<ExtendedCodegenOperation> operationList = (List<ExtendedCodegenOperation>) _operations.get("operation");
+        
+        boolean hasRequiredParameters = false;
+        boolean hasListContainers = false;
+        boolean hasHttpHeaders = false;
+        boolean hasQueryParams = false;
+        boolean hasPathParams = false;
+
+        for (ExtendedCodegenOperation op : operationList) {
+            if (op.getHasRequiredParams()) {
+                hasRequiredParameters = true;
+            }
+            
+            for (CodegenParameter param : op.headerParams) {
+                if (param.isListContainer) {
+                    hasListContainers = true;
+                    break;
+                }
+            }
+            for (CodegenParameter param : op.queryParams) {
+                if (param.isListContainer && !param.isCollectionFormatMulti) {
+                    hasListContainers = true;
+                    break;
+                }
+            }
+            for (CodegenParameter param : op.formParams) {
+                if (param.isListContainer && !param.isCollectionFormatMulti) {
+                    hasListContainers = true;
+                    break;
+                }
+            }
+
+            if (op.hasHttpHeaders) {
+                hasHttpHeaders = true;
+            }
+            if (op.getHasQueryParams()) {
+                hasQueryParams = true;
+            }
+            if (op.getHasPathParams()) {
+                hasPathParams = true;
+            }
+
+            if(hasRequiredParameters && hasListContainers && hasHttpHeaders && hasQueryParams && hasPathParams){
+                break;
+            }
+        }
+
+        operations.put("hasRequiredParameters", hasRequiredParameters);
+        operations.put("hasListContainers", hasListContainers);
+        operations.put("hasHttpHeaders", hasHttpHeaders);
+        operations.put("hasQueryParams", hasQueryParams);
+        operations.put("hasPathParams", hasPathParams);
     }
 
     private void addExtraReservedWords() {
@@ -228,4 +296,71 @@ public class TypeScriptRxjsClientCodegen extends AbstractTypeScriptClientCodegen
         this.reservedWords.add("Middleware");
         this.reservedWords.add("AjaxResponse");
     }
+
+    class ExtendedCodegenOperation extends CodegenOperation {
+        public boolean hasHttpHeaders;
+
+        public ExtendedCodegenOperation(CodegenOperation o) {
+            super();
+
+            // Copy all fields of CodegenOperation
+            this.responseHeaders.addAll(o.responseHeaders);
+            this.hasAuthMethods = o.hasAuthMethods;
+            this.hasConsumes = o.hasConsumes;
+            this.hasProduces = o.hasProduces;
+            this.hasParams = o.hasParams;
+            this.hasOptionalParams = o.hasOptionalParams;
+            this.returnTypeIsPrimitive = o.returnTypeIsPrimitive;
+            this.returnSimpleType = o.returnSimpleType;
+            this.subresourceOperation = o.subresourceOperation;
+            this.isMapContainer = o.isMapContainer;
+            this.isListContainer = o.isListContainer;
+            this.isMultipart = o.isMultipart;
+            this.hasMore = o.hasMore;
+            this.isResponseBinary = o.isResponseBinary;
+            this.hasReference = o.hasReference;
+            this.isRestfulIndex = o.isRestfulIndex;
+            this.isRestfulShow = o.isRestfulShow;
+            this.isRestfulCreate = o.isRestfulCreate;
+            this.isRestfulUpdate = o.isRestfulUpdate;
+            this.isRestfulDestroy = o.isRestfulDestroy;
+            this.isRestful = o.isRestful;
+            this.path = o.path;
+            this.operationId = o.operationId;
+            this.returnType = o.returnType;
+            this.httpMethod = o.httpMethod;
+            this.returnBaseType = o.returnBaseType;
+            this.returnContainer = o.returnContainer;
+            this.summary = o.summary;
+            this.unescapedNotes = o.unescapedNotes;
+            this.notes = o.notes;
+            this.baseName = o.baseName;
+            this.defaultResponse = o.defaultResponse;
+            this.discriminator = o.discriminator;
+            this.consumes = o.consumes;
+            this.produces = o.produces;
+            this.bodyParam = o.bodyParam;
+            this.allParams = o.allParams;
+            this.bodyParams = o.bodyParams;
+            this.pathParams = o.pathParams;
+            this.queryParams = o.queryParams;
+            this.headerParams = o.headerParams;
+            this.formParams = o.formParams;
+            this.requiredParams = o.requiredParams;
+            this.optionalParams = o.optionalParams;
+            this.authMethods = o.authMethods;
+            this.tags = o.tags;
+            this.responses = o.responses;
+            this.imports = o.imports;
+            this.examples = o.examples;
+            this.externalDocs = o.externalDocs;
+            this.vendorExtensions = o.vendorExtensions;
+            this.nickname = o.nickname;
+            this.operationIdLowerCase = o.operationIdLowerCase;
+            this.operationIdCamelCase = o.operationIdCamelCase;
+
+            // new fields
+            this.hasHttpHeaders = o.getHasHeaderParams() || o.getHasBodyParam() || o.hasAuthMethods;
+        }
+    }
 }
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/OnChangeLambda.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/OnChangeLambda.java
new file mode 100644
index 0000000000000000000000000000000000000000..11efbfae5bb3192f7b2dbd8f93445953d438c290
--- /dev/null
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/templating/mustache/OnChangeLambda.java
@@ -0,0 +1,40 @@
+package org.openapitools.codegen.templating.mustache;
+
+import java.io.IOException;
+import java.io.Writer;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.samskivert.mustache.Mustache;
+import com.samskivert.mustache.Template;
+
+/**
+ * Lambda writes current fragment to the output when it is different than
+ * the previous fragment.
+ *
+ * Register:
+ * <pre>
+ * additionalProperties.put("onchange", new OnChangeLambda());
+ * </pre>
+ *
+ * Use:
+ * <pre>
+ * {{#onchange}}{{name}}{{/onchange}}
+ * </pre>
+ */
+public class OnChangeLambda implements Mustache.Lambda {
+    private static final Logger LOGGER = LoggerFactory.getLogger(OnChangeLambda.class);
+
+    private String lastVal = null;
+
+    @Override
+    public void execute(Template.Fragment frag, Writer out) throws IOException {
+        String curVal = frag.execute();
+        LOGGER.debug("[lastVal={}, curVal={}]", lastVal, curVal);
+        if (curVal != null && !curVal.equals(lastVal)) {
+            out.write(curVal);
+            lastVal = curVal;
+        }
+    }
+}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/rest-assured/ApiClient.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/rest-assured/ApiClient.mustache
index 42bdf68613b4792601c00450522ceeeb225fb559..19ab0fa98c3114a4c16633df6c718ae23fdd74f0 100644
--- a/modules/openapi-generator/src/main/resources/Java/libraries/rest-assured/ApiClient.mustache
+++ b/modules/openapi-generator/src/main/resources/Java/libraries/rest-assured/ApiClient.mustache
@@ -34,13 +34,13 @@ public class ApiClient {
      {{#apiInfo}}
      {{#apis}}
     public {{classname}} {{classVarName}}() {
-        return {{classname}}.{{classVarName}}(config.baseReqSpec.get());
+        return {{classname}}.{{classVarName}}(config.reqSpecSupplier);
     }
      {{/apis}}
      {{/apiInfo}}
 
     public static class Config {
-        private Supplier<RequestSpecBuilder> baseReqSpec = () -> new RequestSpecBuilder()
+        private Supplier<RequestSpecBuilder> reqSpecSupplier = () -> new RequestSpecBuilder()
                 {{#basePath}}.setBaseUri(BASE_URI){{/basePath}}
                 .setConfig(config().objectMapperConfig(objectMapperConfig().defaultObjectMapper(gson())));
 
@@ -50,7 +50,7 @@ public class ApiClient {
          * @return configuration
          */
         public Config reqSpecSupplier(Supplier<RequestSpecBuilder> supplier) {
-            this.baseReqSpec = supplier;
+            this.reqSpecSupplier = supplier;
             return this;
         }
 
diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/rest-assured/api.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/rest-assured/api.mustache
index 75c3a373ae3ee178a8323f3795a45b38994111b1..75ea07db60a27e6a0742fd62d6768de62b29cc11 100644
--- a/modules/openapi-generator/src/main/resources/Java/libraries/rest-assured/api.mustache
+++ b/modules/openapi-generator/src/main/resources/Java/libraries/rest-assured/api.mustache
@@ -31,14 +31,23 @@ import static io.restassured.http.Method.*;
 @Api(value = "{{{baseName}}}")
 public class {{classname}} {
 
-    private RequestSpecBuilder reqSpec;
+    private Supplier<RequestSpecBuilder> reqSpecSupplier;
+    private Consumer<RequestSpecBuilder> reqSpecCustomizer;
 
-    private {{classname}}(RequestSpecBuilder reqSpec) {
-        this.reqSpec = reqSpec;
+    private {{classname}}(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        this.reqSpecSupplier = reqSpecSupplier;
     }
 
-    public static {{classname}} {{classVarName}}(RequestSpecBuilder reqSpec) {
-        return new {{classname}}(reqSpec);
+    public static {{classname}} {{classVarName}}(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        return new {{classname}}(reqSpecSupplier);
+    }
+
+    private RequestSpecBuilder createReqSpec() {
+        RequestSpecBuilder reqSpec = reqSpecSupplier.get();
+        if(reqSpecCustomizer != null) {
+            reqSpecCustomizer.accept(reqSpec);
+        }
+        return reqSpec;
     }
 
 {{#operations}}
@@ -54,18 +63,18 @@ public class {{classname}} {
     @Deprecated
     {{/isDeprecated}}
     public {{operationIdCamelCase}}Oper {{operationId}}() {
-        return new {{operationIdCamelCase}}Oper(reqSpec);
+        return new {{operationIdCamelCase}}Oper(createReqSpec());
     }
 {{/operation}}
 {{/operations}}
 
     /**
-     * Customise request specification
-     * @param consumer consumer
+     * Customize request specification
+     * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
      * @return api
      */
-    public {{classname}} reqSpec(Consumer<RequestSpecBuilder> consumer) {
-        consumer.accept(reqSpec);
+    public {{classname}} reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+        this.reqSpecCustomizer = reqSpecCustomizer;
         return this;
     }
 
@@ -216,22 +225,22 @@ public class {{classname}} {
         {{/formParams}}
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public {{operationIdCamelCase}}Oper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public {{operationIdCamelCase}}Oper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public {{operationIdCamelCase}}Oper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public {{operationIdCamelCase}}Oper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/model.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/model.mustache
index 8cbfaf0efdbb5d3b30284e4e6297f48f3f3ddb7a..101e95cbfc4d7bc75b9ddfea5adb2424fe38ae1f 100644
--- a/modules/openapi-generator/src/main/resources/aspnetcore/2.0/model.mustache
+++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.0/model.mustache
@@ -28,10 +28,10 @@ namespace {{packageName}}.Models
         {{/required}}
         [DataMember(Name="{{baseName}}", EmitDefaultValue={{#isNullable}}true{{/isNullable}}{{^isNullable}}false{{/isNullable}})]
         {{#isEnum}}
-        public {{{datatypeWithEnum}}}{{#isEnum}}{{^isContainer}}?{{/isContainer}}{{/isEnum}} {{name}} { get; set; }
+        public {{{datatypeWithEnum}}}{{#isEnum}}{{^isContainer}}?{{/isContainer}}{{/isEnum}} {{name}} { get; set; }{{#defaultValue}} = {{{defaultValue}}};{{/defaultValue}}
         {{/isEnum}}
         {{^isEnum}}
-        public {{{dataType}}} {{name}} { get; {{#isReadOnly}}private {{/isReadOnly}}set; }
+        public {{{dataType}}} {{name}} { get; {{#isReadOnly}}private {{/isReadOnly}}set; }{{#defaultValue}} = {{{defaultValue}}};{{/defaultValue}}
         {{/isEnum}}
         {{#hasMore}}
         {{/hasMore}}
diff --git a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/model.mustache b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/model.mustache
index e4be72baec8722f07c31af8955c3480132b50a8b..e198e2447e78a6dbcaf9d455d7d25dc83491d904 100644
--- a/modules/openapi-generator/src/main/resources/aspnetcore/2.1/model.mustache
+++ b/modules/openapi-generator/src/main/resources/aspnetcore/2.1/model.mustache
@@ -31,10 +31,10 @@ namespace {{modelPackage}}
         {{/pattern}}
         [DataMember(Name="{{baseName}}", EmitDefaultValue={{#isNullable}}true{{/isNullable}}{{^isNullable}}false{{/isNullable}})]
         {{#isEnum}}
-        public {{{datatypeWithEnum}}}{{#isEnum}}{{^isContainer}}?{{/isContainer}}{{/isEnum}} {{name}} { get; set; }
+        public {{{datatypeWithEnum}}}{{#isEnum}}{{^isContainer}}?{{/isContainer}}{{/isEnum}} {{name}} { get; set; }{{#defaultValue}} = {{{defaultValue}}};{{/defaultValue}}
         {{/isEnum}}
         {{^isEnum}}
-        public {{{dataType}}} {{name}} { get; {{#isReadOnly}}private {{/isReadOnly}}set; }
+        public {{{dataType}}} {{name}} { get; {{#isReadOnly}}private {{/isReadOnly}}set; }{{#defaultValue}} = {{{defaultValue}}};{{/defaultValue}}
         {{/isEnum}}
         {{#hasMore}}
         {{/hasMore}}
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.cpp.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.cpp.mustache
index f9c036f82079c101e6894c744d0a6105f7c57511..05bad7539e350156166b3aa031ba476e88c7bf9b 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.cpp.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.cpp.mustache
@@ -45,7 +45,7 @@ void {{prefix}}HttpRequestInput::add_file(QString variable_name, QString local_f
     : QObject(parent), manager(nullptr)
 {
     qsrand(QDateTime::currentDateTime().toTime_t());
-    timeout = 0;    
+    timeout = 0;
     timer = new QTimer();
     manager = new QNetworkAccessManager(this);
     connect(manager, &QNetworkAccessManager::finished, this, &{{prefix}}HttpRequestWorker::on_manager_finished);
@@ -57,7 +57,7 @@ void {{prefix}}HttpRequestInput::add_file(QString variable_name, QString local_f
             timer->stop();
         }
         timer->deleteLater();
-    }    
+    }
 }
 
 QMap<QByteArray, QByteArray> {{prefix}}HttpRequestWorker::getResponseHeaders() const {
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.h.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.h.mustache
index 6ba6b63117ad3a752325b2677c2b8f9bb9e53c10..0af88c407086a0cef78d5b2f2efe00591cf45f53 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.h.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/HttpRequest.h.mustache
@@ -76,10 +76,10 @@ signals:
 private:
     QNetworkAccessManager *manager;
     QMap<QByteArray, QByteArray> headers;
-    int timeout;    
-    void on_manager_timeout(QNetworkReply *reply);    
+    int timeout;
+    void on_manager_timeout(QNetworkReply *reply);
 private slots:
-    void on_manager_finished(QNetworkReply *reply);    
+    void on_manager_finished(QNetworkReply *reply);
 };
 
 {{#cppNamespaceDeclarations}}
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/Project.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/Project.mustache
index 11a0eb49bf3ed85627f8c8465cbc0f17ef000ad7..9f530b381aa0e47aed35ace6d5398a4d7554a3d1 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/Project.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/Project.mustache
@@ -19,7 +19,7 @@ HEADERS += \
     $${PWD}/{{prefix}}Helpers.h \
     $${PWD}/{{prefix}}HttpRequest.h \
     $${PWD}/{{prefix}}Object.h
-    $${PWD}/{{prefix}}Enum.h    
+    $${PWD}/{{prefix}}Enum.h
 
 SOURCES += \
 # Models
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/api-body.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/api-body.mustache
index 899a16b05973c77d0eff3496f5c8ffeecaf0f56a..5777507ec972b946546cadfd16847cc6d157a0df 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/api-body.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/api-body.mustache
@@ -49,7 +49,7 @@ void
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("{{{path}}}");
     {{#pathParams}}
-    QString {{paramName}}PathParam("{"); 
+    QString {{paramName}}PathParam("{");
     {{paramName}}PathParam.append("{{baseName}}").append("}");
     fullPath.replace({{paramName}}PathParam, QUrl::toPercentEncoding(::{{cppNamespace}}::toStringValue({{paramName}})));
     {{/pathParams}}
@@ -103,7 +103,7 @@ void
     }
     {{/collectionFormat}}{{/queryParams}}
     {{prefix}}HttpRequestWorker *worker = new {{prefix}}HttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     {{prefix}}HttpRequestInput input(fullPath, "{{httpMethod}}");
     {{#formParams}}
     if ({{paramName}} != nullptr) {
@@ -166,7 +166,7 @@ void
     {{^isListContainer}}
     {{^isMapContainer}}
     {{#returnTypeIsPrimitive}}
-    {{{returnType}}} output;  
+    {{{returnType}}} output;
     ::{{cppNamespace}}::fromStringValue(QString(worker->response), output);
     {{/returnTypeIsPrimitive}}
     {{/isMapContainer}}
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/api-header.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/api-header.mustache
index ea9218ad529e815b8e88e2e204b6ebf0471b9ac9..5f0232797544ada8b8a4d42d32b9e9a2861bbd03 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/api-header.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/api-header.mustache
@@ -25,7 +25,7 @@ public:
     void setHost(const QString& host);
     void setApiTimeOutMs(const int tout);
     void addHeaders(const QString& key, const QString& value);
-    
+
     {{#operations}}{{#operation}}void {{nickname}}({{#allParams}}const {{{dataType}}}& {{paramName}}{{#hasMore}}, {{/hasMore}}{{/allParams}});
     {{/operation}}{{/operations}}
 private:
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/enum.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/enum.mustache
index 2874ef8c712958fa6c2455956178bbe2d18c6ed3..bf34a3a150c07ef70849c24e1a78166d70db6135 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/enum.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/enum.mustache
@@ -15,7 +15,7 @@ class {{prefix}}Enum {
     {{prefix}}Enum() {
 
     }
-    
+
     {{prefix}}Enum(QString jsonString) {
         fromJson(jsonString);
     }
@@ -48,7 +48,7 @@ class {{prefix}}Enum {
         return true;
     }
 private :
-    QString jstr; 
+    QString jstr;
 };
 
 {{#cppNamespaceDeclarations}}
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/helpers-body.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/helpers-body.mustache
index 9aa16e1b52a070b1644e48e266ae9b3059979203..ddf83be29152acfe99cca26b60c8c8d2b69cbce6 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/helpers-body.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/helpers-body.mustache
@@ -220,7 +220,7 @@ fromJsonValue(QString &value, const QJsonValue &jval){
         } else if(jval.isDouble()){
             value = QString::number(jval.toDouble());
         } else {
-            ok = false;    
+            ok = false;
         }
     } else {
         ok = false;
@@ -230,7 +230,7 @@ fromJsonValue(QString &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(QDateTime &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(!jval.isUndefined() && !jval.isNull() && jval.isString()){
         value = QDateTime::fromString(jval.toString(), Qt::ISODate);
         ok = value.isValid();
@@ -254,7 +254,7 @@ fromJsonValue(QByteArray &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(QDate &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(!jval.isUndefined() && !jval.isNull() && jval.isString()){
         value = QDate::fromString(jval.toString(), Qt::ISODate);
         ok = value.isValid();
@@ -266,7 +266,7 @@ fromJsonValue(QDate &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(qint32 &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(!jval.isUndefined() && !jval.isNull() && !jval.isObject() && !jval.isArray()){
         value = jval.toInt();
     } else {
@@ -277,7 +277,7 @@ fromJsonValue(qint32 &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(qint64 &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(!jval.isUndefined() && !jval.isNull() && !jval.isObject() && !jval.isArray()){
         value = jval.toVariant().toLongLong();
     } else {
@@ -288,7 +288,7 @@ fromJsonValue(qint64 &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(bool &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(jval.isBool()){
         value = jval.toBool();
     } else {
@@ -299,7 +299,7 @@ fromJsonValue(bool &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(float &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(jval.isDouble()){
         value = static_cast<float>(jval.toDouble());
     } else {
@@ -310,7 +310,7 @@ fromJsonValue(float &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(double &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(jval.isDouble()){
         value = jval.toDouble();
     } else {
@@ -321,7 +321,7 @@ fromJsonValue(double &value, const QJsonValue &jval){
 
 bool
 fromJsonValue({{prefix}}Object  &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(jval.isObject()){
         value.fromJsonObject(jval.toObject());
         ok = value.isValid();
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/helpers-header.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/helpers-header.mustache
index 0948f4f662f1dd7c490c7098530fe726ad318169..6c8436c5543459475c6d285426f67afa36861188 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/helpers-header.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/helpers-header.mustache
@@ -129,7 +129,7 @@ namespace {{this}} {
             ok = false;
         }
         return ok;
-    } 
+    }
 
     template <typename T>
     bool fromJsonValue(QMap<QString, T> &val, const QJsonValue &jval) {
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/model-body.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/model-body.mustache
index 2a75a18c760ca04da53c796ddc240abdd3ef21ca..1e25f8982777d16da3d0d78f763f4e47440e14d2 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/model-body.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/model-body.mustache
@@ -43,7 +43,7 @@ void
     {{^isEnum}}QByteArray array (jsonString.toStdString().c_str());
     QJsonDocument doc = QJsonDocument::fromJson(array);
     QJsonObject jsonObject = doc.object();
-    this->fromJsonObject(jsonObject);{{/isEnum}}{{#isEnum}}{{#allowableValues}}{{#enumVars}} 
+    this->fromJsonObject(jsonObject);{{/isEnum}}{{#isEnum}}{{#allowableValues}}{{#enumVars}}
     {{#-first}}if{{/-first}}{{^-first}}else if{{/-first}} ( jsonString.compare({{#isString}}"{{value}}"{{/isString}}{{^isString}}QString::number({{value}}){{/isString}}, Qt::CaseInsensitive) == 0) {
         m_value = e{{classname}}::{{name}};
         m_value_isValid = true;
@@ -92,7 +92,7 @@ QString
         {{#enumVars}}
         case e{{classname}}::{{name}}:
             val = {{#isString}}"{{value}}"{{/isString}}{{^isString}}QString::number({{value}}){{/isString}};
-            break;{{#-last}} 
+            break;{{#-last}}
         default:
             break;{{/-last}}
         {{/enumVars}}
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/model-header.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/model-header.mustache
index 38b42f401a2c3f50eee9da5c493ce2606341e2b8..556139facfb38f86beccf0bc7e9cf5c49b8ba013 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/model-header.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/model-header.mustache
@@ -53,7 +53,7 @@ public:
 
     {{classname}}::e{{classname}} getValue() const;
     void setValue(const {{classname}}::e{{classname}}& value);{{/isEnum}}
-    
+
     virtual bool isSet() const override;
     virtual bool isValid() const override;
 
diff --git a/modules/openapi-generator/src/main/resources/cpp-qt5-client/object.mustache b/modules/openapi-generator/src/main/resources/cpp-qt5-client/object.mustache
index 100670d1fc5c4bbe3699fcff5da1494636f58b11..e58b49adb92140d3b3f0a5900f77caae42c39068 100644
--- a/modules/openapi-generator/src/main/resources/cpp-qt5-client/object.mustache
+++ b/modules/openapi-generator/src/main/resources/cpp-qt5-client/object.mustache
@@ -15,7 +15,7 @@ class {{prefix}}Object {
     {{prefix}}Object() {
 
     }
-    
+
     {{prefix}}Object(QString jsonString) {
         fromJson(jsonString);
     }
diff --git a/modules/openapi-generator/src/main/resources/dart-jaguar/apilib.mustache b/modules/openapi-generator/src/main/resources/dart-jaguar/apilib.mustache
index 8571ea0a198ea9d47870f5b97a3b84a74f142041..1fd657ea1dfcfe6d461056b4fb1615bb28159d65 100644
--- a/modules/openapi-generator/src/main/resources/dart-jaguar/apilib.mustache
+++ b/modules/openapi-generator/src/main/resources/dart-jaguar/apilib.mustache
@@ -21,7 +21,7 @@ import 'package:jaguar_mimetype/jaguar_mimetype.dart';
 final _jsonJaguarRepo = JsonRepo()
 {{#models}}{{#model}}..add({{classname}}Serializer())
 {{/model}}{{/models}};
-final Map<String, CodecRepo> converters = {
+final Map<String, CodecRepo> defaultConverters = {
     MimeTypes.json: _jsonJaguarRepo,
 };
 {{/jsonFormat}}
@@ -33,7 +33,7 @@ final _protoJaguarRepo = ProtoCodecRepo()
 final _jsonJaguarRepo = ProtoCodecRepo(isJsonFormatEnabled: true)
 {{#models}}{{#model}}..add((data) => {{classname}}.fromBuffer(List<int>.from(data)))
 {{/model}}{{/models}};
-final Map<String, CodecRepo> converters = {
+final Map<String, CodecRepo> defaultConverters = {
     MimeTypes.json: _jsonJaguarRepo,
     MimeTypes.binary: _protoJaguarRepo,
 };
@@ -91,7 +91,7 @@ class {{clientName}} {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return {{classname}}(base: base, converters: converters, timeout: timeout);
     }
diff --git a/modules/openapi-generator/src/main/resources/go-experimental/README.mustache b/modules/openapi-generator/src/main/resources/go-experimental/README.mustache
index 5c9639022a173aa2d40c995fa6c3f051a2efa3c7..869443a26edf39ce29f0c7266ab1b9c45e6ed9fc 100644
--- a/modules/openapi-generator/src/main/resources/go-experimental/README.mustache
+++ b/modules/openapi-generator/src/main/resources/go-experimental/README.mustache
@@ -113,6 +113,22 @@ r, err := client.Service.Operation(auth, args)
 {{/isOAuth}}
 {{/authMethods}}
 
+## Documentation for Utility Methods
+
+Due to the fact that model structure members are all pointers, this package contains
+a number of utility functions to easily obtain pointers to values of basic types.
+Each of these functions takes a value of the given basic type and returns a pointer to it:
+
+* `PtrBool`
+* `PtrInt`
+* `PtrInt32`
+* `PtrInt64`
+* `PtrFloat`
+* `PtrFloat32`
+* `PtrFloat64`
+* `PtrString`
+* `PtrTime`
+
 ## Author
 
 {{#apiInfo}}{{#apis}}{{^hasMore}}{{infoEmail}}
diff --git a/modules/openapi-generator/src/main/resources/go-experimental/model.mustache b/modules/openapi-generator/src/main/resources/go-experimental/model.mustache
index 1a9f8d1c5aaf940af7930854c7b612d7b5dde0dd..17833f918b59369a6ef0d9001a17692c10558531 100644
--- a/modules/openapi-generator/src/main/resources/go-experimental/model.mustache
+++ b/modules/openapi-generator/src/main/resources/go-experimental/model.mustache
@@ -35,9 +35,95 @@ type {{classname}} struct {
 {{#description}}
 	// {{{description}}}
 {{/description}}
-	{{name}} {{#isNullable}}*{{/isNullable}}{{{dataType}}} `json:"{{baseName}}{{^required}},omitempty{{/required}}"{{#withXml}} xml:"{{baseName}}{{#isXmlAttribute}},attr{{/isXmlAttribute}}"{{/withXml}}{{#vendorExtensions.x-go-custom-tag}} {{{.}}}{{/vendorExtensions.x-go-custom-tag}}`
+	{{name}} *{{{dataType}}} `json:"{{baseName}},omitempty"{{#withXml}} xml:"{{baseName}}{{#isXmlAttribute}},attr{{/isXmlAttribute}}"{{/withXml}}{{#vendorExtensions.x-go-custom-tag}} {{{.}}}{{/vendorExtensions.x-go-custom-tag}}`
+{{#isNullable}}    isExplicitNull{{name}} bool `json:"-"{{#withXml}} xml:"-"{{/withXml}}`{{/isNullable}}
 {{/vars}}
 }
 {{/isEnum}}
+
+{{^isEnum}}
+{{#vars}}
+// Get{{name}} returns the {{name}} field if non-nil, zero value otherwise.
+func (o *{{classname}}) Get{{name}}() {{dataType}} {
+	if o == nil || o.{{name}} == nil {
+		var ret {{dataType}}
+		return ret
+	}
+	return *o.{{name}}
+}
+
+// Get{{name}}Ok returns a tuple with the {{name}} field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *{{classname}}) Get{{name}}Ok() ({{dataType}}, bool) {
+	if o == nil || o.{{name}} == nil {
+		var ret {{dataType}}
+		return ret, false
+	}
+	return *o.{{name}}, true
+}
+
+// Has{{name}} returns a boolean if a field has been set.
+func (o *{{classname}}) Has{{name}}() bool {
+	if o != nil && o.{{name}} != nil {
+		return true
+	}
+
+	return false
+}
+
+// Set{{name}} gets a reference to the given {{dataType}} and assigns it to the {{name}} field.
+func (o *{{classname}}) Set{{name}}(v {{dataType}}) {
+	o.{{name}} = &v
+}
+
+{{#isNullable}}
+// Set{{name}}ExplicitNull (un)sets {{name}} to be considered as explicit "null" value
+// when serializing to JSON (pass true as argument to set this, false to unset)
+// The {{name}} value is set to nil even if false is passed
+func (o *{{classname}}) Set{{name}}ExplicitNull(b bool) {
+	o.{{name}} = nil
+	o.isExplicitNull{{name}} = b
+}
+{{/isNullable}}
+{{/vars}}
+
+func (o {{classname}}) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	{{#vars}}
+	{{#required}}
+	{{! if argument is required and not nullable, it can't be nil}}
+	{{^isNullable}}
+	if o.{{name}} == nil {
+		return nil, errors.New("{{name}} is required and not nullable, but was not set on {{classname}}")
+	}{{/isNullable}}
+	{{! if argument is required and nullable, it *must* have isExplicitNull<name> set to true when it's nil}}
+	{{#isNullable}}
+	if o.{{name}} == nil && !o.isExplicitNull{{name}} {
+		return nil, errors.New("{{name}} is required and nullable, but it wasn't set to be explicit null")
+	}
+	{{/isNullable}}
+	{{/required}}
+	{{! if argument is nullable, only serialize it if it is nil *and* was explicitly set to nil}}
+	{{#isNullable}}
+	if o.{{name}} == nil {
+		if o.isExplicitNull{{name}} {
+			toSerialize["{{baseName}}"] = o.{{name}}
+		}
+	} else {
+		toSerialize["{{baseName}}"] = o.{{name}}
+	}
+	{{/isNullable}}
+	{{! if argument is not nullable, don't set it if it is nil}}
+	{{^isNullable}}
+	if o.{{name}} != nil {
+		toSerialize["{{baseName}}"] = o.{{name}}
+	}
+	{{/isNullable}}
+	{{/vars}}
+	return json.Marshal(toSerialize)
+}
+
+{{/isEnum}}
+
 {{/model}}
 {{/models}}
diff --git a/modules/openapi-generator/src/main/resources/go-experimental/model_doc.mustache b/modules/openapi-generator/src/main/resources/go-experimental/model_doc.mustache
index 546238243b10107ee2cfccd6992b900c7f8b3f7c..98040dcb2501cc6954d97e7d540c6acfd1ed4217 100644
--- a/modules/openapi-generator/src/main/resources/go-experimental/model_doc.mustache
+++ b/modules/openapi-generator/src/main/resources/go-experimental/model_doc.mustache
@@ -4,9 +4,50 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-{{#vars}}**{{name}}** | {{#isNullable}}Pointer to {{/isNullable}}{{#isPrimitiveType}}**{{{dataType}}}**{{/isPrimitiveType}}{{^isPrimitiveType}}[**{{{dataType}}}**]({{complexType}}.md){{/isPrimitiveType}} | {{description}} | {{^required}}[optional] {{/required}}{{#readOnly}}[readonly] {{/readOnly}}{{#defaultValue}}[default to {{{.}}}]{{/defaultValue}}
+{{#vars}}**{{name}}** | Pointer to {{#isPrimitiveType}}**{{{dataType}}}**{{/isPrimitiveType}}{{^isPrimitiveType}}[**{{{dataType}}}**]({{complexType}}.md){{/isPrimitiveType}} | {{description}} | {{^required}}[optional] {{/required}}{{#readOnly}}[readonly] {{/readOnly}}{{#defaultValue}}[default to {{{.}}}]{{/defaultValue}}
 {{/vars}}
 
+{{^isEnum}}
+## Methods
+
+{{#vars}}
+### Get{{name}}
+
+`func (o *{{classname}}) Get{{name}}() {{dataType}}`
+
+Get{{name}} returns the {{name}} field if non-nil, zero value otherwise.
+
+### Get{{name}}Ok
+
+`func (o *{{classname}}) Get{{name}}Ok() ({{dataType}}, bool)`
+
+Get{{name}}Ok returns a tuple with the {{name}} field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### Has{{name}}
+
+`func (o *{{classname}}) Has{{name}}() bool`
+
+Has{{name}} returns a boolean if a field has been set.
+
+### Set{{name}}
+
+`func (o *{{classname}}) Set{{name}}(v {{dataType}})`
+
+Set{{name}} gets a reference to the given {{dataType}} and assigns it to the {{name}} field.
+
+{{#isNullable}}
+### Set{{name}}ExplicitNull
+
+`func (o *{{classname}}) Set{{name}}ExplicitNull(b bool)`
+
+Set{{name}}ExplicitNull (un)sets {{name}} to be considered as explicit "null" value
+when serializing to JSON (pass true as argument to set this, false to unset)
+The {{name}} value is set to nil even if false is passed
+{{/isNullable}}
+{{/vars}}
+{{/isEnum}}
+
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
 {{/model}}{{/models}}
diff --git a/modules/openapi-generator/src/main/resources/go-experimental/utils.mustache b/modules/openapi-generator/src/main/resources/go-experimental/utils.mustache
new file mode 100644
index 0000000000000000000000000000000000000000..e3598373cb4aaf61f0dae76bf37f81dee0e677d2
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/go-experimental/utils.mustache
@@ -0,0 +1,31 @@
+{{>partial_header}}
+package {{packageName}}
+
+import "time"
+
+// PtrBool is a helper routine that returns a pointer to given integer value.
+func PtrBool(v bool) *bool { return &v }
+
+// PtrInt is a helper routine that returns a pointer to given integer value.
+func PtrInt(v int) *int { return &v }
+
+// PtrInt32 is a helper routine that returns a pointer to given integer value.
+func PtrInt32(v int32) *int32 { return &v }
+
+// PtrInt64 is a helper routine that returns a pointer to given integer value.
+func PtrInt64(v int64) *int64 { return &v }
+
+// PtrFloat is a helper routine that returns a pointer to given float value.
+func PtrFloat(v float32) *float32 { return &v }
+
+// PtrFloat32 is a helper routine that returns a pointer to given float value.
+func PtrFloat32(v float32) *float32 { return &v }
+
+// PtrFloat64 is a helper routine that returns a pointer to given float value.
+func PtrFloat64(v float64) *float64 { return &v }
+
+// PtrString is a helper routine that returns a pointer to given string value.
+func PtrString(v string) *string { return &v }
+
+// PtrTime is helper routine that returns a pointer to given Time value.
+func PtrTime(v time.Time) *time.Time { return &v }
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/rust/hyper/api.mustache b/modules/openapi-generator/src/main/resources/rust/hyper/api.mustache
index 426fee7fe80dbcb681f73bd45f2c0102d657e667..872148bdddd1d46c206fa99080bbcb9d67b2a7bd 100644
--- a/modules/openapi-generator/src/main/resources/rust/hyper/api.mustache
+++ b/modules/openapi-generator/src/main/resources/rust/hyper/api.mustache
@@ -24,7 +24,7 @@ impl<C: hyper::client::Connect> {{{classname}}}Client<C> {
 pub trait {{{classname}}} {
 {{#operations}}
 {{#operation}}
-    fn {{{operationId}}}(&self, {{#allParams}}{{{paramName}}}: {{#isString}}&str{{/isString}}{{#isUuid}}&str{{/isUuid}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}::models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{/isUuid}}{{/isString}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Box<Future<Item = {{^returnType}}(){{/returnType}}{{#returnType}}{{{returnType}}}{{/returnType}}, Error = Error<serde_json::Value>>>;
+    fn {{{operationId}}}(&self, {{#allParams}}{{{paramName}}}: {{#isString}}&str{{/isString}}{{#isUuid}}&str{{/isUuid}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}crate::models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{/isUuid}}{{/isString}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Box<Future<Item = {{^returnType}}(){{/returnType}}{{#returnType}}{{{returnType}}}{{/returnType}}, Error = Error<serde_json::Value>>>;
 {{/operation}}
 {{/operations}}
 }
@@ -33,7 +33,7 @@ pub trait {{{classname}}} {
 impl<C: hyper::client::Connect>{{{classname}}} for {{{classname}}}Client<C> {
 {{#operations}}
 {{#operation}}
-    fn {{{operationId}}}(&self, {{#allParams}}{{{paramName}}}: {{#isString}}&str{{/isString}}{{#isUuid}}&str{{/isUuid}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}::models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{/isUuid}}{{/isString}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Box<Future<Item = {{^returnType}}(){{/returnType}}{{#returnType}}{{{.}}}{{/returnType}}, Error = Error<serde_json::Value>>> {
+    fn {{{operationId}}}(&self, {{#allParams}}{{{paramName}}}: {{#isString}}&str{{/isString}}{{#isUuid}}&str{{/isUuid}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}crate::models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{/isUuid}}{{/isString}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Box<Future<Item = {{^returnType}}(){{/returnType}}{{#returnType}}{{{.}}}{{/returnType}}, Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::{{{httpMethod}}}, "{{{path}}}".to_string())
         {{#hasAuthMethods}}
         {{#authMethods}}
diff --git a/modules/openapi-generator/src/main/resources/rust/hyper/client.mustache b/modules/openapi-generator/src/main/resources/rust/hyper/client.mustache
index f93577e7cb1b4404245959387dbd8113e79bb984..a0648b758bc9b0505fc059f531481272e03f5de5 100644
--- a/modules/openapi-generator/src/main/resources/rust/hyper/client.mustache
+++ b/modules/openapi-generator/src/main/resources/rust/hyper/client.mustache
@@ -10,7 +10,7 @@ pub struct APIClient<C: hyper::client::Connect> {
 {{#operations}}
 {{#operation}}
     {{#-last}}
-    {{{classFilename}}}: Box<::apis::{{{classname}}}>,
+    {{{classFilename}}}: Box<crate::apis::{{{classname}}}>,
     {{/-last}}
 {{/operation}}
 {{/operations}}
@@ -29,7 +29,7 @@ impl<C: hyper::client::Connect> APIClient<C> {
 {{#operations}}
 {{#operation}}
             {{#-last}}
-            {{{classFilename}}}: Box::new(::apis::{{{classname}}}Client::new(rc.clone())),
+            {{{classFilename}}}: Box::new(crate::apis::{{{classname}}}Client::new(rc.clone())),
             {{/-last}}
 {{/operation}}
 {{/operations}}
@@ -43,7 +43,7 @@ impl<C: hyper::client::Connect> APIClient<C> {
 {{#operations}}
 {{#operation}}
 {{#-last}}
-    pub fn {{{classFilename}}}(&self) -> &::apis::{{{classname}}}{
+    pub fn {{{classFilename}}}(&self) -> &crate::apis::{{{classname}}}{
         self.{{{classFilename}}}.as_ref()
     }
 
diff --git a/modules/openapi-generator/src/main/resources/rust/model.mustache b/modules/openapi-generator/src/main/resources/rust/model.mustache
index 4c6b8dff10cc6560ad3b3372f5b33a4d5ea8da17..37a3ff77bcc00e45f0e02c20cf2f7f853ed668db 100644
--- a/modules/openapi-generator/src/main/resources/rust/model.mustache
+++ b/modules/openapi-generator/src/main/resources/rust/model.mustache
@@ -5,9 +5,6 @@
 /// {{{classname}}} : {{{description}}}
 {{/description}}
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 {{!-- for enum schemas --}}
 {{#isEnum}}
 /// {{{description}}}
diff --git a/modules/openapi-generator/src/main/resources/rust/reqwest/api.mustache b/modules/openapi-generator/src/main/resources/rust/reqwest/api.mustache
index e6706f7afe1041d8546930008c4f12386c4b2e94..038284ec6c335116d014894b1f40eeb35990d552 100644
--- a/modules/openapi-generator/src/main/resources/rust/reqwest/api.mustache
+++ b/modules/openapi-generator/src/main/resources/rust/reqwest/api.mustache
@@ -21,7 +21,7 @@ impl {{{classname}}}Client {
 pub trait {{{classname}}} {
 {{#operations}}
 {{#operation}}
-    fn {{{operationId}}}(&self, {{#allParams}}{{{paramName}}}: {{#isString}}&str{{/isString}}{{#isUuid}}&str{{/isUuid}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}::models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{/isUuid}}{{/isString}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Result<{{^returnType}}(){{/returnType}}{{#returnType}}{{{returnType}}}{{/returnType}}, Error>;
+    fn {{{operationId}}}(&self, {{#allParams}}{{{paramName}}}: {{#isString}}&str{{/isString}}{{#isUuid}}&str{{/isUuid}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}crate::models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{/isUuid}}{{/isString}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Result<{{^returnType}}(){{/returnType}}{{#returnType}}{{{returnType}}}{{/returnType}}, Error>;
 {{/operation}}
 {{/operations}}
 }
@@ -29,7 +29,7 @@ pub trait {{{classname}}} {
 impl {{{classname}}} for {{{classname}}}Client {
 {{#operations}}
 {{#operation}}
-    fn {{{operationId}}}(&self, {{#allParams}}{{{paramName}}}: {{#isString}}&str{{/isString}}{{#isUuid}}&str{{/isUuid}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}::models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{/isUuid}}{{/isString}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Result<{{^returnType}}(){{/returnType}}{{#returnType}}{{{returnType}}}{{/returnType}}, Error> {
+    fn {{{operationId}}}(&self, {{#allParams}}{{{paramName}}}: {{#isString}}&str{{/isString}}{{#isUuid}}&str{{/isUuid}}{{^isString}}{{^isUuid}}{{^isPrimitiveType}}{{^isContainer}}crate::models::{{/isContainer}}{{/isPrimitiveType}}{{{dataType}}}{{/isUuid}}{{/isString}}{{#hasMore}}, {{/hasMore}}{{/allParams}}) -> Result<{{^returnType}}(){{/returnType}}{{#returnType}}{{{returnType}}}{{/returnType}}, Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
diff --git a/modules/openapi-generator/src/main/resources/rust/reqwest/client.mustache b/modules/openapi-generator/src/main/resources/rust/reqwest/client.mustache
index 33f2b2fd61b5fdb47a22ca23e9b47f692c12a676..5fdede09c4f15a51ec4bcfeccd43cc12c0661e31 100644
--- a/modules/openapi-generator/src/main/resources/rust/reqwest/client.mustache
+++ b/modules/openapi-generator/src/main/resources/rust/reqwest/client.mustache
@@ -9,7 +9,7 @@ pub struct APIClient {
 {{#operations}}
 {{#operation}}
     {{#-last}}
-    {{{classFilename}}}: Box<::apis::{{{classname}}}>,
+    {{{classFilename}}}: Box<crate::apis::{{{classname}}}>,
     {{/-last}}
 {{/operation}}
 {{/operations}}
@@ -28,7 +28,7 @@ impl APIClient {
 {{#operations}}
 {{#operation}}
             {{#-last}}
-            {{{classFilename}}}: Box::new(::apis::{{{classname}}}Client::new(rc.clone())),
+            {{{classFilename}}}: Box::new(crate::apis::{{{classname}}}Client::new(rc.clone())),
             {{/-last}}
 {{/operation}}
 {{/operations}}
@@ -42,7 +42,7 @@ impl APIClient {
 {{#operations}}
 {{#operation}}
 {{#-last}}
-    pub fn {{{classFilename}}}(&self) -> &::apis::{{{classname}}}{
+    pub fn {{{classFilename}}}(&self) -> &crate::apis::{{{classname}}}{
         self.{{{classFilename}}}.as_ref()
     }
 
diff --git a/modules/openapi-generator/src/main/resources/swift4/XcodeGen.mustache b/modules/openapi-generator/src/main/resources/swift4/XcodeGen.mustache
new file mode 100644
index 0000000000000000000000000000000000000000..9e447e49a644ae16e239a148f86a7db8c95f1098
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/swift4/XcodeGen.mustache
@@ -0,0 +1,17 @@
+name: {{projectName}}
+targets:
+  {{projectName}}:
+    type: framework
+    platform: iOS
+    deploymentTarget: "10.0"
+    sources: [{{projectName}}]
+    info:
+      path: ./Info.plist
+      version: {{#podVersion}}{{podVersion}}{{/podVersion}}{{^podVersion}}{{#apiInfo}}{{version}}{{/apiInfo}}{{^apiInfo}}}0.0.1{{/apiInfo}}{{/podVersion}}
+    settings:
+      APPLICATION_EXTENSION_API_ONLY: true
+    scheme: {}
+    dependencies:
+    - carthage: Alamofire{{#useRxSwift}}
+    - carthage: RxSwift{{/useRxSwift}}{{#usePromiseKit}}
+    - carthage: PromiseKit{{/usePromiseKit}}
diff --git a/modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache b/modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache
index 0ad35d6b1402bf0bf3e3090cd5e70f0972dcd4c6..85573aa8b13d90bba3a81506fab762edd94a908e 100644
--- a/modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache
@@ -4,16 +4,15 @@
 import { Inject, Injectable, Optional }                      from '@angular/core';
 {{#useHttpClient}}
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 {{/useHttpClient}}
 {{^useHttpClient}}
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
 {{/useHttpClient}}
-
 {{^useRxJS6}}
 import { Observable }                                        from 'rxjs/Observable';
 {{/useRxJS6}}
@@ -59,6 +58,12 @@ export class {{classname}} {
     protected basePath = '{{{basePath}}}';
     public defaultHeaders = new {{#useHttpClient}}Http{{/useHttpClient}}Headers();
     public configuration = new Configuration();
+{{#useHttpClient}}
+    public encoder: HttpParameterCodec;
+{{/useHttpClient}}
+{{^useHttpClient}}
+    public encoder: QueryEncoder;
+{{/useHttpClient}}
 
     constructor(protected {{#useHttpClient}}httpClient: HttpClient{{/useHttpClient}}{{^useHttpClient}}http: Http{{/useHttpClient}}, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -69,6 +74,12 @@ export class {{classname}} {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+{{#useHttpClient}}
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
+{{/useHttpClient}}
+{{^useHttpClient}}
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
+{{/useHttpClient}}
     }
 
     /**
@@ -143,10 +154,10 @@ export class {{classname}} {
 
 {{#hasQueryParams}}
         {{#useHttpClient}}
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         {{/useHttpClient}}
         {{^useHttpClient}}
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         {{/useHttpClient}}
 {{#queryParams}}
         {{#isListContainer}}
@@ -280,12 +291,12 @@ export class {{classname}} {
             formParams = new FormData();
         } else {
 {{#useHttpClient}}
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
 {{/useHttpClient}}
 {{^useHttpClient}}
             // TODO: this fails if a parameter is a file, the api can't consume "multipart/form-data" and a blob is passed.
             convertFormParamsToString = true;
-            formParams = new URLSearchParams('', new CustomQueryEncoderHelper());
+            formParams = new URLSearchParams('', this.encoder);
             // set the content-type explicitly to avoid having it set to 'text/plain'
             headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
 {{/useHttpClient}}
diff --git a/modules/openapi-generator/src/main/resources/typescript-angular/configuration.mustache b/modules/openapi-generator/src/main/resources/typescript-angular/configuration.mustache
index 1132f4adc1756f1d2050279127678722c357b6fb..272608be3a68f7231f5ce66543c22205d59428e5 100644
--- a/modules/openapi-generator/src/main/resources/typescript-angular/configuration.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-angular/configuration.mustache
@@ -1,3 +1,10 @@
+{{#useHttpClient}}
+import { HttpParameterCodec } from '@angular/common/http';
+{{/useHttpClient}}
+{{^useHttpClient}}
+import { QueryEncoder } from '@angular/http';
+{{/useHttpClient}}
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +12,12 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+{{#useHttpClient}}
+    encoder?: HttpParameterCodec;
+{{/useHttpClient}}
+{{^useHttpClient}}
+    encoder?: QueryEncoder;
+{{/useHttpClient}}
 }
 
 export class Configuration {
@@ -14,6 +27,12 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+{{#useHttpClient}}
+    encoder?: HttpParameterCodec;
+{{/useHttpClient}}
+{{^useHttpClient}}
+    encoder?: QueryEncoder;
+{{/useHttpClient}}
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +41,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/modules/openapi-generator/src/main/resources/typescript-angular/encoder.mustache b/modules/openapi-generator/src/main/resources/typescript-angular/encoder.mustache
index c3ac784124a29a4b6870f61be3841104abe95aac..b3685b0bd92792389aa74f3ded7f6f558e395a68 100644
--- a/modules/openapi-generator/src/main/resources/typescript-angular/encoder.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-angular/encoder.mustache
@@ -1,30 +1,33 @@
 {{#useHttpClient}}
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 {{/useHttpClient}}
 {{^useHttpClient}}
-    import { QueryEncoder } from '@angular/http';
+import { QueryEncoder } from '@angular/http';
 {{/useHttpClient}}
 
 {{#useHttpClient}}
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 {{/useHttpClient}}
 {{^useHttpClient}}
 /**
-* CustomQueryEncoderHelper
+* Custom QueryEncoder
 * Fix plus sign (+) not encoding, so sent as blank space
 * See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
 */
diff --git a/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache b/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache
index b903769d8a3eee520cfefc0604e9e635252583f9..662ec63b5b81f3e9c69f2091a54bdb5689fe0371 100644
--- a/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache
@@ -229,14 +229,26 @@ export class {{classname}} extends runtime.BaseAPI {
         {{/returnType}}
     }
 
-    /**
-     {{#notes}}
-     * {{&notes}}
-     {{/notes}}
-     {{#summary}}
-     * {{&summary}}
-     {{/summary}}
-     */
+   /**
+    {{#notes}}
+    * {{&notes}}
+    {{/notes}}
+    {{#summary}}
+    * {{&summary}}
+    {{/summary}}
+    */
+    {{^useSingleRequestParameter}}
+    async {{nickname}}({{#allParams}}{{paramName}}{{^required}}?{{/required}}: {{#isEnum}}{{{datatypeWithEnum}}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{#hasMore}}, {{/hasMore}}{{/allParams}}): Promise<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}> {
+        {{#returnType}}
+        const response = await this.{{nickname}}Raw({{#allParams.0}}{ {{#allParams}}{{paramName}}: {{paramName}}{{#hasMore}}, {{/hasMore}}{{/allParams}} }{{/allParams.0}});
+        return await response.value();
+        {{/returnType}}
+        {{^returnType}}
+        await this.{{nickname}}Raw({{#allParams.0}}{ {{#allParams}}{{paramName}}: {{paramName}}{{#hasMore}}, {{/hasMore}}{{/allParams}} }{{/allParams.0}});
+        {{/returnType}}
+    }
+    {{/useSingleRequestParameter}}
+    {{#useSingleRequestParameter}}
     async {{nickname}}({{#allParams.0}}requestParameters: {{operationIdCamelCase}}Request{{/allParams.0}}): Promise<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}> {
         {{#returnType}}
         const response = await this.{{nickname}}Raw({{#allParams.0}}requestParameters{{/allParams.0}});
@@ -246,6 +258,7 @@ export class {{classname}} extends runtime.BaseAPI {
         await this.{{nickname}}Raw({{#allParams.0}}requestParameters{{/allParams.0}});
         {{/returnType}}
     }
+    {{/useSingleRequestParameter}}
 
     {{/operation}}
 }
diff --git a/modules/openapi-generator/src/main/resources/typescript-fetch/index.mustache b/modules/openapi-generator/src/main/resources/typescript-fetch/index.mustache
index 848ecfa4d100d22f5b444ab2a0e8fc7bdec067b4..e548c9df6b2c7b1d1048f1e37b978b64db4260f4 100644
--- a/modules/openapi-generator/src/main/resources/typescript-fetch/index.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-fetch/index.mustache
@@ -1,3 +1,9 @@
 export * from './runtime';
+{{#apiInfo}}
+{{#apis.0}}
 export * from './apis';
+{{/apis.0}}
+{{/apiInfo}}
+{{#models.0}}
 export * from './models';
+{{/models.0}}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache b/modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache
index c4227e75de63b71af3292706e5481a8b2bb3ddd0..91b263cb5d22183433cf3327828a0138c8d9bdb6 100644
--- a/modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache
@@ -197,33 +197,35 @@ export class {{classname}} {
 {{/bodyParam}}
         };
 
+        let authenticationPromise = Promise.resolve();
 {{#authMethods}}
-        this.authentications.{{name}}.applyToRequest(localVarRequestOptions);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.{{name}}.applyToRequest(localVarRequestOptions));
 
 {{/authMethods}}
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.{{#supportsES6}}IncomingMessage{{/supportsES6}}{{^supportsES6}}ClientResponse{{/supportsES6}}; {{#returnType}}body: {{{returnType}}}; {{/returnType}}{{^returnType}}body?: any; {{/returnType}} }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    {{#returnType}}
-                    body = ObjectSerializer.deserialize(body, "{{{returnType}}}");
-                    {{/returnType}}
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.{{#supportsES6}}IncomingMessage{{/supportsES6}}{{^supportsES6}}ClientResponse{{/supportsES6}}; {{#returnType}}body: {{{returnType}}}; {{/returnType}}{{^returnType}}body?: any; {{/returnType}} }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        {{#returnType}}
+                        body = ObjectSerializer.deserialize(body, "{{{returnType}}}");
+                        {{/returnType}}
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
diff --git a/modules/openapi-generator/src/main/resources/typescript-node/models.mustache b/modules/openapi-generator/src/main/resources/typescript-node/models.mustache
index 39c7da727ec32da4fa548f77b492bb569d8f1d2f..0bd709c2dda4b0e45648d9ed0379e879012b8fdc 100644
--- a/modules/openapi-generator/src/main/resources/typescript-node/models.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-node/models.mustache
@@ -166,7 +166,7 @@ export interface Authentication {
     /**
     * Apply authentication settings to header and query params.
     */
-    applyToRequest(requestOptions: localVarRequest.Options): void;
+    applyToRequest(requestOptions: localVarRequest.Options): Promise<void> | void;
 }
 
 export class HttpBasicAuth implements Authentication {
diff --git a/modules/openapi-generator/src/main/resources/typescript-rxjs/README.mustache b/modules/openapi-generator/src/main/resources/typescript-rxjs/README.mustache
index 624571727a9dc207bfae0ead5ac9591fc2b32c92..017994bbe865a84c724d97326277e3798ab74a73 100644
--- a/modules/openapi-generator/src/main/resources/typescript-rxjs/README.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-rxjs/README.mustache
@@ -27,7 +27,7 @@ npm run build
 
 ### Publishing
 
-First build the package then run ```npm publish```
+First build the package then run `npm publish`
 
 ### Consuming
 
@@ -43,3 +43,45 @@ _unPublished (not recommended):_
 
 ```
 npm install PATH_TO_GENERATED_PACKAGE --save
+```
+
+### How to apply middleware
+
+First, add a singleton class that extends the generated `Configuration` class.
+
+```
+export class AuthInterceptor extends Configuration {
+  private static config: AuthInterceptor;
+
+  private constructor() {
+    const middleware: Middleware[] = [
+      {
+        pre(request: RequestArgs): RequestArgs {
+          const token = getAuthToken();
+
+          return {
+            ...request,
+            headers: {
+              ...request.headers,
+              Authorization: `Bearer ${token}`,
+            },
+          };
+        },
+      },
+    ];
+
+    super({ middleware });
+  }
+
+  public static get Instance() {
+    return AuthInterceptor.config || (AuthInterceptor.config = new this());
+  }
+}
+```
+
+Next, pass it to the generated api controller.
+
+```
+const api = new StoreApi(AuthInterceptor.Instance);
+
+```
diff --git a/modules/openapi-generator/src/main/resources/typescript-rxjs/apis.mustache b/modules/openapi-generator/src/main/resources/typescript-rxjs/apis.mustache
index fe486821daf492148a02e0999c5e5d775d78b8f4..70b0ea8872171a19954e23cd29e51d3268013071 100644
--- a/modules/openapi-generator/src/main/resources/typescript-rxjs/apis.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-rxjs/apis.mustache
@@ -1,7 +1,7 @@
 // tslint:disable
 {{>licenseInfo}}
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI{{#hasHttpHeaders}}, HttpHeaders{{/hasHttpHeaders}}{{#hasQueryParams}}, HttpQuery{{/hasQueryParams}}{{#hasRequiredParameters}}, throwIfRequired{{/hasRequiredParameters}}{{#hasPathParams}}, encodeURI{{/hasPathParams}}{{#hasListContainers}}, COLLECTION_FORMATS{{/hasListContainers}} } from '../runtime';
 {{#imports.0}}
 import {
     {{#imports}}
@@ -38,12 +38,15 @@ export class {{classname}} extends BaseAPI {
      {{/summary}}
      */
     {{nickname}} = ({{#allParams.0}}requestParameters: {{operationIdCamelCase}}Request{{/allParams.0}}): Observable<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}> => {
+        {{#hasParams}}
         {{#allParams}}
         {{#required}}
         throwIfRequired(requestParameters, '{{paramName}}', '{{nickname}}');
         {{/required}}
         {{/allParams}}
 
+        {{/hasParams}}
+        {{#hasHttpHeaders}}
         const headers: HttpHeaders = {
             {{#bodyParam}}
             {{^consumes}}
@@ -81,6 +84,8 @@ export class {{classname}} extends BaseAPI {
             {{/authMethods}}
         };
 
+        {{/hasHttpHeaders}}
+        {{#hasQueryParams}}
         const query: HttpQuery = {
             {{#queryParams}}
             {{#isListContainer}}
@@ -114,6 +119,7 @@ export class {{classname}} extends BaseAPI {
             {{/authMethods}}
         };
 
+        {{/hasQueryParams}}
         {{#hasFormParams}}
         const formData = new FormData();
         {{/hasFormParams}}
@@ -139,10 +145,14 @@ export class {{classname}} extends BaseAPI {
         {{/isListContainer}}
         {{/formParams}}
         return this.request<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}>({
-            path: `{{{path}}}`{{#pathParams}}.replace({{=<% %>=}}`{<%baseName%>}`<%={{ }}=%>, encodeURIComponent(String(requestParameters.{{paramName}}))){{/pathParams}},
+            path: '{{{path}}}'{{#pathParams}}.replace({{=<% %>=}}'{<%baseName%>}'<%={{ }}=%>, encodeURI(requestParameters.{{paramName}})){{/pathParams}},
             method: '{{httpMethod}}',
+            {{#hasHttpHeaders}}
             headers,
+            {{/hasHttpHeaders}}
+            {{#hasQueryParams}}
             query,
+            {{/hasQueryParams}}
             {{#hasBodyParam}}
             {{#bodyParam}}
             {{#isContainer}}
diff --git a/modules/openapi-generator/src/main/resources/typescript-rxjs/modelGeneric.mustache b/modules/openapi-generator/src/main/resources/typescript-rxjs/modelGeneric.mustache
index ce0cc74bbd611fa905abcc19c908b22c02f8d753..543ab776e4de25ce91b3b16a9670d33d9d109ec3 100644
--- a/modules/openapi-generator/src/main/resources/typescript-rxjs/modelGeneric.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-rxjs/modelGeneric.mustache
@@ -16,8 +16,8 @@ export interface {{classname}} {{#parent}}extends {{{parent}}} {{/parent}}{
     [key: string]: {{{additionalPropertiesType}}}{{#hasVars}} | any{{/hasVars}};
 {{/additionalPropertiesType}}
 {{#vars}}
-    /**
-     * {{{description}}}
+    /**{{#description}}
+     * {{{description}}}{{/description}}
      * @type {{=<% %>=}}{<%&datatype%>}<%={{ }}=%>
      * @memberof {{classname}}
      */
diff --git a/modules/openapi-generator/src/main/resources/typescript-rxjs/runtime.mustache b/modules/openapi-generator/src/main/resources/typescript-rxjs/runtime.mustache
index b426f80ab0ffac3357940c1b7f404f940765aa22..9592c345d1bec5a5747c1ebce628ddbb20d8a834 100644
--- a/modules/openapi-generator/src/main/resources/typescript-rxjs/runtime.mustache
+++ b/modules/openapi-generator/src/main/resources/typescript-rxjs/runtime.mustache
@@ -1,7 +1,7 @@
 // tslint:disable
 {{>licenseInfo}}
 import { Observable, of } from 'rxjs';
-import { ajax, AjaxResponse } from 'rxjs/ajax';
+import { ajax, AjaxRequest, AjaxResponse } from 'rxjs/ajax';
 import { map, concatMap } from 'rxjs/operators';
 
 export const BASE_PATH = '{{{basePath}}}'.replace(/\/+$/, '');
@@ -73,8 +73,8 @@ export class BaseAPI {
     withPostMiddleware = <T extends BaseAPI>(postMiddlewares: Array<Middleware['post']>) =>
         this.withMiddleware<T>(postMiddlewares.map((post) => ({ post })));
 
-    protected request = <T>(context: RequestOpts): Observable<T> => 
-        this.rxjsRequest(this.createRequestArgs(context)).pipe(
+    protected request = <T>(requestOpts: RequestOpts): Observable<T> => 
+        this.rxjsRequest(this.createRequestArgs(requestOpts)).pipe(
             map((res) => {
                 if (res.status >= 200 && res.status < 300) {
                     return res.response as T;
@@ -83,46 +83,38 @@ export class BaseAPI {
             })
         );
 
-    private createRequestArgs = (context: RequestOpts): RequestArgs => {
-        let url = this.configuration.basePath + context.path;
-        if (context.query !== undefined && Object.keys(context.query).length !== 0) {
+    private createRequestArgs = (requestOpts: RequestOpts): RequestArgs => {
+        let url = this.configuration.basePath + requestOpts.path;
+        if (requestOpts.query !== undefined && Object.keys(requestOpts.query).length !== 0) {
             // only add the queryString to the URL if there are query parameters.
             // this is done to avoid urls ending with a '?' character which buggy webservers
             // do not handle correctly sometimes.
-            url += '?' + queryString(context.query);
+            url += '?' + queryString(requestOpts.query);
         }
-        const body = context.body instanceof FormData ? context.body : JSON.stringify(context.body);
-        const options = {
-            method: context.method,
-            headers: context.headers,
-            body,
+        
+        return {
+            url,
+            method: requestOpts.method,
+            headers: requestOpts.headers,
+            body: requestOpts.body instanceof FormData ? requestOpts.body : JSON.stringify(requestOpts.body),
         };
-        return { url, options };
     }
 
-    private rxjsRequest = (params: RequestContext): Observable<AjaxResponse> => {
-        const preMiddlewares = this.middleware.filter((item) => item.pre);
-        const postMiddlewares = this.middleware.filter((item) => item.post);
-
-        return of(params).pipe(
-            map((args) => {
-                if (preMiddlewares) {
-                    preMiddlewares.forEach((mw) => (args = mw.pre!({ ...args })));
-                }
-                return args;
+    private rxjsRequest = (params: RequestArgs): Observable<AjaxResponse> => 
+        of(params).pipe(
+            map((request) => {
+                this.middleware.filter((item) => item.pre).forEach((mw) => (request = mw.pre!(request)));
+                return request;
             }),
             concatMap((args) =>
-                ajax({ url: args.url, ...args.options }).pipe(
+                ajax(args).pipe(
                     map((response) => {
-                        if (postMiddlewares) {
-                            postMiddlewares.forEach((mw) => (response = mw.post!({ ...params, response })));
-                        }
+                        this.middleware.filter((item) => item.post).forEach((mw) => (response = mw.post!(response)));
                         return response;
                     })
                 )
             )
         );
-    }
 
     /**
      * Create a shallow clone of `this` by constructing a new instance
@@ -151,27 +143,22 @@ export type HttpQuery = { [key: string]: string | number | null | boolean | Arra
 export type HttpBody = Json | FormData;
 export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original';
 
-export interface RequestArgs {
-    url: string;
-    options: RequestInit;
-}
-
 export interface RequestOpts {
     path: string;
     method: HttpMethod;
-    headers: HttpHeaders;
+    headers?: HttpHeaders;
     query?: HttpQuery;
     body?: HttpBody;
 }
 
+export const encodeURI = (value: any) => encodeURIComponent(String(value))
+
 const queryString = (params: HttpQuery): string => Object.keys(params)
     .map((key) => {
         const value = params[key];
-        if (value instanceof Array) {
-            return value.map((val) => `${encodeURIComponent(key)}=${encodeURIComponent(String(val))}`)
-                .join('&');
-        }
-        return `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`;
+        return (value instanceof Array)
+            ? value.map((val) => `${encodeURI(key)}=${encodeURI(val)}`).join('&')
+            : `${encodeURI(key)}=${encodeURI(value)}`;
     })
     .join('&');
 
@@ -184,12 +171,11 @@ export const throwIfRequired = (params: {[key: string]: any}, key: string, nickn
     }
 }
 
-export interface RequestContext extends RequestArgs {}
-export interface ResponseContext extends RequestArgs {
-    response: AjaxResponse;
-}
+// alias for easier importing
+export interface RequestArgs extends AjaxRequest {}
+export interface ResponseArgs extends AjaxResponse {}
 
 export interface Middleware {
-    pre?(context: RequestContext): RequestArgs;
-    post?(context: ResponseContext): AjaxResponse;
+    pre?(request: RequestArgs): RequestArgs;
+    post?(response: ResponseArgs): ResponseArgs;
 }
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/config/CodegenConfiguratorTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/config/CodegenConfiguratorTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..68271020ca8363f3519eed14402ff20760c42272
--- /dev/null
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/config/CodegenConfiguratorTest.java
@@ -0,0 +1,122 @@
+/*
+ * Copyright 2019 OpenAPI-Generator Contributors (https://openapi-generator.tech)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.openapitools.codegen.config;
+
+import org.openapitools.codegen.ClientOptInput;
+import org.openapitools.codegen.CodegenConfig;
+import org.openapitools.codegen.CodegenConstants;
+import org.openapitools.codegen.DefaultGenerator;
+import org.testng.annotations.Test;
+
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.util.HashMap;
+import java.util.Map;
+
+import static org.testng.Assert.*;
+
+public class CodegenConfiguratorTest {
+    private void want(Map<String, Object> additionalProperties, String key, Object expected) {
+        assertEquals(additionalProperties.getOrDefault(key, null), expected);
+    }
+
+    @Test
+    public void shouldSetConfiglProperties() throws IOException {
+        // This tests that properties we set on CodegenConfigurator make it down into generator properties,
+        // limiting to those managed in DefaultCodegen.
+        Map<String, Object> properties = new HashMap<String, Object>() {{
+           put("foo", "bar");
+           put("baz", "quux");
+           put(CodegenConstants.HIDE_GENERATION_TIMESTAMP, true);
+           put(CodegenConstants.SORT_PARAMS_BY_REQUIRED_FLAG, true);
+           put(CodegenConstants.PREPEND_FORM_OR_BODY_PARAMETERS, false);
+           put(CodegenConstants.ENSURE_UNIQUE_PARAMS, true);
+           put(CodegenConstants.ALLOW_UNICODE_IDENTIFIERS, true);
+           put(CodegenConstants.REMOVE_OPERATION_ID_PREFIX, false);
+           put(CodegenConstants.DOCEXTENSION, "D");
+           put(CodegenConstants.ENABLE_POST_PROCESS_FILE, false);
+           put(CodegenConstants.GENERATE_ALIAS_AS_MODEL, true);
+        }};
+
+        File output = Files.createTempDirectory("test").toFile();
+        File template = Files.createTempDirectory("test").toFile();
+        String outDir = Paths.get(output.toURI()).toAbsolutePath().toString();
+        String templateDir = Paths.get(template.toURI()).toAbsolutePath().toString();
+
+        final CodegenConfigurator configurator = new CodegenConfigurator()
+                .setGeneratorName("java")
+                .setAdditionalProperties(properties)
+                .setInputSpec("src/test/resources/3_0/ping.yaml")
+                .addImportMapping("one", "two")
+                .addInstantiationType("three", "four")
+                .addLanguageSpecificPrimitive("five")
+                .addSystemProperty("six", "seven")
+                .addTypeMapping("eight", "nine")
+                .setApiPackage("test-api")
+                .setArtifactId("test-artifactId")
+                .setArtifactVersion("test-artifactVersion")
+                .setAuth("test-auth")
+                .setGitRepoId("git")
+                .setGitUserId("user")
+                .setGroupId("group")
+                .setHttpUserAgent("agent")
+                .setModelNamePrefix("model-prefix")
+                .setModelNameSuffix("model-suffix")
+                .setModelPackage("model-package")
+                .setPackageName("package-name")
+                .setReleaseNote("release-note")
+                .setTemplateDir(templateDir)
+                .setOutputDir(outDir);
+
+        final ClientOptInput clientOptInput = configurator.toClientOptInput();
+
+        CodegenConfig config = clientOptInput.getConfig();
+        config.processOpts();
+
+        Map<String, Object> props = config.additionalProperties();
+
+        // This verifies that things we expect to make it into the template will, as a result of this CodegenConfigurator.
+        want(props, CodegenConstants.MODEL_PACKAGE, "model_package"); // * mutated by codegen
+        want(props, CodegenConstants.API_PACKAGE, "test_api"); // * mutated by codegen
+        want(props, CodegenConstants.HIDE_GENERATION_TIMESTAMP, true);
+        want(props, CodegenConstants.SORT_PARAMS_BY_REQUIRED_FLAG, true);
+        want(props, CodegenConstants.PREPEND_FORM_OR_BODY_PARAMETERS, false);
+        want(props, CodegenConstants.ENSURE_UNIQUE_PARAMS, true);
+        want(props, CodegenConstants.ALLOW_UNICODE_IDENTIFIERS, true);
+        want(props, CodegenConstants.MODEL_NAME_PREFIX, "model-prefix");
+        want(props, CodegenConstants.MODEL_NAME_SUFFIX, "model-suffix");
+        want(props, CodegenConstants.REMOVE_OPERATION_ID_PREFIX, false);
+        want(props, CodegenConstants.DOCEXTENSION, "D");
+        want(props, CodegenConstants.ENABLE_POST_PROCESS_FILE, false);
+        want(props, CodegenConstants.GENERATE_ALIAS_AS_MODEL, true);
+        want(props, CodegenConstants.TEMPLATE_DIR, templateDir);
+        want(props, CodegenConstants.GIT_REPO_ID, "git");
+        want(props, CodegenConstants.GIT_USER_ID, "user");
+        want(props, CodegenConstants.GROUP_ID, "group");
+        want(props, CodegenConstants.ARTIFACT_ID, "test-artifactId");
+        want(props, CodegenConstants.ARTIFACT_VERSION, "test-artifactVersion");
+        want(props, CodegenConstants.HTTP_USER_AGENT, "agent");
+        want(props, CodegenConstants.RELEASE_NOTE, "release-note");
+        want(props, CodegenConstants.PACKAGE_NAME, "package-name");
+
+        // test custom properties
+        want(props, "foo", "bar");
+        want(props, "baz", "quux");
+    }
+}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptFetchClientOptionsProvider.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptFetchClientOptionsProvider.java
index 46d991e03c73e227d2073c7b4cdab6e675670339..28cb99720881c3bdd224fba2940e09b2d7999e9b 100644
--- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptFetchClientOptionsProvider.java
+++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptFetchClientOptionsProvider.java
@@ -51,6 +51,7 @@ public class TypeScriptFetchClientOptionsProvider implements OptionsProvider {
                 .put(TypeScriptFetchClientCodegen.NPM_REPOSITORY, NPM_REPOSITORY)
                 .put(TypeScriptFetchClientCodegen.SNAPSHOT, Boolean.FALSE.toString())
                 .put(TypeScriptFetchClientCodegen.WITH_INTERFACES, Boolean.FALSE.toString())
+                .put(TypeScriptFetchClientCodegen.USE_SINGLE_REQUEST_PARAMETER, Boolean.FALSE.toString())
                 .put(CodegenConstants.ALLOW_UNICODE_IDENTIFIERS, ALLOW_UNICODE_IDENTIFIERS_VALUE)
                 .put(CodegenConstants.PREPEND_FORM_OR_BODY_PARAMETERS, PREPEND_FORM_OR_BODY_PARAMETERS_VALUE)
                 .build();
diff --git a/samples/client/petstore/cpp-qt5/.openapi-generator/VERSION b/samples/client/petstore/cpp-qt5/.openapi-generator/VERSION
index d96260ba335daf9acb062ef08962bda16f3a5a8c..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/cpp-qt5/.openapi-generator/VERSION
+++ b/samples/client/petstore/cpp-qt5/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.2-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/cpp-qt5/client/OAIApiResponse.h b/samples/client/petstore/cpp-qt5/client/OAIApiResponse.h
index 2fe8209ac10ac700d60292dc19e85863de4f6abb..aa71d9cdfbe54197dd308991ed57017a4833c331 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIApiResponse.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIApiResponse.h
@@ -53,7 +53,7 @@ public:
     void setMessage(const QString &message);
 
     
-    
+
     virtual bool isSet() const override;
     virtual bool isValid() const override;
 
diff --git a/samples/client/petstore/cpp-qt5/client/OAICategory.h b/samples/client/petstore/cpp-qt5/client/OAICategory.h
index 129d974857661c38ef9357857a763cf9b48a5241..966f5e295f1181dd5e42962fcac6610fe5d60c25 100644
--- a/samples/client/petstore/cpp-qt5/client/OAICategory.h
+++ b/samples/client/petstore/cpp-qt5/client/OAICategory.h
@@ -49,7 +49,7 @@ public:
     void setName(const QString &name);
 
     
-    
+
     virtual bool isSet() const override;
     virtual bool isValid() const override;
 
diff --git a/samples/client/petstore/cpp-qt5/client/OAIEnum.h b/samples/client/petstore/cpp-qt5/client/OAIEnum.h
index a5e619960fba8544f64014d727e42ccbfc69f5dc..66625c43b633d5c2cf2c4331e0fb83e8e42a2c00 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIEnum.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIEnum.h
@@ -24,7 +24,7 @@ class OAIEnum {
     OAIEnum() {
 
     }
-    
+
     OAIEnum(QString jsonString) {
         fromJson(jsonString);
     }
@@ -57,7 +57,7 @@ class OAIEnum {
         return true;
     }
 private :
-    QString jstr; 
+    QString jstr;
 };
 
 }
diff --git a/samples/client/petstore/cpp-qt5/client/OAIHelpers.cpp b/samples/client/petstore/cpp-qt5/client/OAIHelpers.cpp
index bbe372ea8563145774ea75d5792be5ac84b58bd4..fa0ba7d9f22f9d28e6018ee895bcea434f7e002d 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIHelpers.cpp
+++ b/samples/client/petstore/cpp-qt5/client/OAIHelpers.cpp
@@ -229,7 +229,7 @@ fromJsonValue(QString &value, const QJsonValue &jval){
         } else if(jval.isDouble()){
             value = QString::number(jval.toDouble());
         } else {
-            ok = false;    
+            ok = false;
         }
     } else {
         ok = false;
@@ -239,7 +239,7 @@ fromJsonValue(QString &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(QDateTime &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(!jval.isUndefined() && !jval.isNull() && jval.isString()){
         value = QDateTime::fromString(jval.toString(), Qt::ISODate);
         ok = value.isValid();
@@ -263,7 +263,7 @@ fromJsonValue(QByteArray &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(QDate &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(!jval.isUndefined() && !jval.isNull() && jval.isString()){
         value = QDate::fromString(jval.toString(), Qt::ISODate);
         ok = value.isValid();
@@ -275,7 +275,7 @@ fromJsonValue(QDate &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(qint32 &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(!jval.isUndefined() && !jval.isNull() && !jval.isObject() && !jval.isArray()){
         value = jval.toInt();
     } else {
@@ -286,7 +286,7 @@ fromJsonValue(qint32 &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(qint64 &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(!jval.isUndefined() && !jval.isNull() && !jval.isObject() && !jval.isArray()){
         value = jval.toVariant().toLongLong();
     } else {
@@ -297,7 +297,7 @@ fromJsonValue(qint64 &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(bool &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(jval.isBool()){
         value = jval.toBool();
     } else {
@@ -308,7 +308,7 @@ fromJsonValue(bool &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(float &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(jval.isDouble()){
         value = static_cast<float>(jval.toDouble());
     } else {
@@ -319,7 +319,7 @@ fromJsonValue(float &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(double &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(jval.isDouble()){
         value = jval.toDouble();
     } else {
@@ -330,7 +330,7 @@ fromJsonValue(double &value, const QJsonValue &jval){
 
 bool
 fromJsonValue(OAIObject  &value, const QJsonValue &jval){
-    bool ok = true;    
+    bool ok = true;
     if(jval.isObject()){
         value.fromJsonObject(jval.toObject());
         ok = value.isValid();
diff --git a/samples/client/petstore/cpp-qt5/client/OAIHelpers.h b/samples/client/petstore/cpp-qt5/client/OAIHelpers.h
index ce7cec3fc71000f9456e128df29af255c0154dc9..0555e5dc2440fbfed57a26f116a12c5d90c7560a 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIHelpers.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIHelpers.h
@@ -138,7 +138,7 @@ namespace OpenAPI {
             ok = false;
         }
         return ok;
-    } 
+    }
 
     template <typename T>
     bool fromJsonValue(QMap<QString, T> &val, const QJsonValue &jval) {
diff --git a/samples/client/petstore/cpp-qt5/client/OAIHttpRequest.cpp b/samples/client/petstore/cpp-qt5/client/OAIHttpRequest.cpp
index 8fdd4ea5e9703b254a53a8c9f9bf54bce0522d07..a2ec8558cee092293e53d6357a57781c58af5593 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIHttpRequest.cpp
+++ b/samples/client/petstore/cpp-qt5/client/OAIHttpRequest.cpp
@@ -54,7 +54,7 @@ OAIHttpRequestWorker::OAIHttpRequestWorker(QObject *parent)
     : QObject(parent), manager(nullptr)
 {
     qsrand(QDateTime::currentDateTime().toTime_t());
-    timeout = 0;    
+    timeout = 0;
     timer = new QTimer();
     manager = new QNetworkAccessManager(this);
     connect(manager, &QNetworkAccessManager::finished, this, &OAIHttpRequestWorker::on_manager_finished);
@@ -66,7 +66,7 @@ OAIHttpRequestWorker::~OAIHttpRequestWorker() {
             timer->stop();
         }
         timer->deleteLater();
-    }    
+    }
 }
 
 QMap<QByteArray, QByteArray> OAIHttpRequestWorker::getResponseHeaders() const {
diff --git a/samples/client/petstore/cpp-qt5/client/OAIHttpRequest.h b/samples/client/petstore/cpp-qt5/client/OAIHttpRequest.h
index b7380595c047fbef0774bb4571a285e51606aa61..ad3c31f6942332101525448efbdf9018b305b10d 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIHttpRequest.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIHttpRequest.h
@@ -85,10 +85,10 @@ signals:
 private:
     QNetworkAccessManager *manager;
     QMap<QByteArray, QByteArray> headers;
-    int timeout;    
-    void on_manager_timeout(QNetworkReply *reply);    
+    int timeout;
+    void on_manager_timeout(QNetworkReply *reply);
 private slots:
-    void on_manager_finished(QNetworkReply *reply);    
+    void on_manager_finished(QNetworkReply *reply);
 };
 
 }
diff --git a/samples/client/petstore/cpp-qt5/client/OAIObject.h b/samples/client/petstore/cpp-qt5/client/OAIObject.h
index babc1e64fbbf1a3a351b598e9aca6bfaa546efea..83757b567175c246ab9e4a8c07b5227559f381df 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIObject.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIObject.h
@@ -24,7 +24,7 @@ class OAIObject {
     OAIObject() {
 
     }
-    
+
     OAIObject(QString jsonString) {
         fromJson(jsonString);
     }
diff --git a/samples/client/petstore/cpp-qt5/client/OAIOrder.h b/samples/client/petstore/cpp-qt5/client/OAIOrder.h
index c9b006d363205a53d955ebb34fedd1496665f4d3..79b3fe74136e1bbf0b478085dbfa3081c295eebf 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIOrder.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIOrder.h
@@ -66,7 +66,7 @@ public:
     void setComplete(const bool &complete);
 
     
-    
+
     virtual bool isSet() const override;
     virtual bool isValid() const override;
 
diff --git a/samples/client/petstore/cpp-qt5/client/OAIPet.h b/samples/client/petstore/cpp-qt5/client/OAIPet.h
index 6bec604d216c7141b55ddcaa2bda337b8c83dfa1..f4e357e693fc22ccd7647425a4a6465b736d88e1 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIPet.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIPet.h
@@ -68,7 +68,7 @@ public:
     void setStatus(const QString &status);
 
     
-    
+
     virtual bool isSet() const override;
     virtual bool isValid() const override;
 
diff --git a/samples/client/petstore/cpp-qt5/client/OAIPetApi.cpp b/samples/client/petstore/cpp-qt5/client/OAIPetApi.cpp
index 3e83ea00668fbbf5e329bb77f865da4ee73789e6..1341a73c3b9549efb8f73099eb44603e04d20645 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIPetApi.cpp
+++ b/samples/client/petstore/cpp-qt5/client/OAIPetApi.cpp
@@ -57,7 +57,7 @@ OAIPetApi::addPet(const OAIPet& body) {
     fullPath.append(this->host).append(this->basePath).append("/pet");
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "POST");
 
     
@@ -104,12 +104,12 @@ void
 OAIPetApi::deletePet(const qint64& pet_id, const QString& api_key) {
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("/pet/{petId}");
-    QString pet_idPathParam("{"); 
+    QString pet_idPathParam("{");
     pet_idPathParam.append("petId").append("}");
     fullPath.replace(pet_idPathParam, QUrl::toPercentEncoding(::OpenAPI::toStringValue(pet_id)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "DELETE");
 
     if (api_key != nullptr) {
@@ -197,7 +197,7 @@ OAIPetApi::findPetsByStatus(const QList<QString>& status) {
     }
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "GET");
 
 
@@ -292,7 +292,7 @@ OAIPetApi::findPetsByTags(const QList<QString>& tags) {
     }
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "GET");
 
 
@@ -345,12 +345,12 @@ void
 OAIPetApi::getPetById(const qint64& pet_id) {
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("/pet/{petId}");
-    QString pet_idPathParam("{"); 
+    QString pet_idPathParam("{");
     pet_idPathParam.append("petId").append("}");
     fullPath.replace(pet_idPathParam, QUrl::toPercentEncoding(::OpenAPI::toStringValue(pet_id)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "GET");
 
 
@@ -396,7 +396,7 @@ OAIPetApi::updatePet(const OAIPet& body) {
     fullPath.append(this->host).append(this->basePath).append("/pet");
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "PUT");
 
     
@@ -443,12 +443,12 @@ void
 OAIPetApi::updatePetWithForm(const qint64& pet_id, const QString& name, const QString& status) {
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("/pet/{petId}");
-    QString pet_idPathParam("{"); 
+    QString pet_idPathParam("{");
     pet_idPathParam.append("petId").append("}");
     fullPath.replace(pet_idPathParam, QUrl::toPercentEncoding(::OpenAPI::toStringValue(pet_id)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "POST");
     if (name != nullptr) {
         input.add_var("name", name);
@@ -497,12 +497,12 @@ void
 OAIPetApi::uploadFile(const qint64& pet_id, const QString& additional_metadata, const OAIHttpRequestInputFileElement*& file) {
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("/pet/{petId}/uploadImage");
-    QString pet_idPathParam("{"); 
+    QString pet_idPathParam("{");
     pet_idPathParam.append("petId").append("}");
     fullPath.replace(pet_idPathParam, QUrl::toPercentEncoding(::OpenAPI::toStringValue(pet_id)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "POST");
     if (additional_metadata != nullptr) {
         input.add_var("additionalMetadata", additional_metadata);
diff --git a/samples/client/petstore/cpp-qt5/client/OAIPetApi.h b/samples/client/petstore/cpp-qt5/client/OAIPetApi.h
index bd64db93db13e99d99e9c2e7d6b4da17032e7bb7..449de958530ee04fb9e1ae9676cf506cbf7b77c8 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIPetApi.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIPetApi.h
@@ -36,7 +36,7 @@ public:
     void setHost(const QString& host);
     void setApiTimeOutMs(const int tout);
     void addHeaders(const QString& key, const QString& value);
-    
+
     void addPet(const OAIPet& body);
     void deletePet(const qint64& pet_id, const QString& api_key);
     void findPetsByStatus(const QList<QString>& status);
diff --git a/samples/client/petstore/cpp-qt5/client/OAIStoreApi.cpp b/samples/client/petstore/cpp-qt5/client/OAIStoreApi.cpp
index 90ac22d129f379aec03804e58c4e752821d5d234..7b2e37f635b493dd0f1fe0ed2b2d5c19888f0b11 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIStoreApi.cpp
+++ b/samples/client/petstore/cpp-qt5/client/OAIStoreApi.cpp
@@ -55,12 +55,12 @@ void
 OAIStoreApi::deleteOrder(const QString& order_id) {
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("/store/order/{orderId}");
-    QString order_idPathParam("{"); 
+    QString order_idPathParam("{");
     order_idPathParam.append("orderId").append("}");
     fullPath.replace(order_idPathParam, QUrl::toPercentEncoding(::OpenAPI::toStringValue(order_id)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "DELETE");
 
 
@@ -105,7 +105,7 @@ OAIStoreApi::getInventory() {
     fullPath.append(this->host).append(this->basePath).append("/store/inventory");
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "GET");
 
 
@@ -158,12 +158,12 @@ void
 OAIStoreApi::getOrderById(const qint64& order_id) {
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("/store/order/{orderId}");
-    QString order_idPathParam("{"); 
+    QString order_idPathParam("{");
     order_idPathParam.append("orderId").append("}");
     fullPath.replace(order_idPathParam, QUrl::toPercentEncoding(::OpenAPI::toStringValue(order_id)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "GET");
 
 
@@ -209,7 +209,7 @@ OAIStoreApi::placeOrder(const OAIOrder& body) {
     fullPath.append(this->host).append(this->basePath).append("/store/order");
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "POST");
 
     
diff --git a/samples/client/petstore/cpp-qt5/client/OAIStoreApi.h b/samples/client/petstore/cpp-qt5/client/OAIStoreApi.h
index e532321dcd89a0220563f595240d12d0362f44dd..2f9d41b99853dcd544691f940d251b0a6036e9ff 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIStoreApi.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIStoreApi.h
@@ -35,7 +35,7 @@ public:
     void setHost(const QString& host);
     void setApiTimeOutMs(const int tout);
     void addHeaders(const QString& key, const QString& value);
-    
+
     void deleteOrder(const QString& order_id);
     void getInventory();
     void getOrderById(const qint64& order_id);
diff --git a/samples/client/petstore/cpp-qt5/client/OAITag.h b/samples/client/petstore/cpp-qt5/client/OAITag.h
index 497a021f0858f4a2e25fd7d2cca0955d32e8e1c9..1ea18b386771c9ef0e42342f255ac65ec502eae2 100644
--- a/samples/client/petstore/cpp-qt5/client/OAITag.h
+++ b/samples/client/petstore/cpp-qt5/client/OAITag.h
@@ -49,7 +49,7 @@ public:
     void setName(const QString &name);
 
     
-    
+
     virtual bool isSet() const override;
     virtual bool isValid() const override;
 
diff --git a/samples/client/petstore/cpp-qt5/client/OAIUser.h b/samples/client/petstore/cpp-qt5/client/OAIUser.h
index 556de322584e583d185e2333f8c31b768cb18d7e..f7dd6591ec842c485a6245c9e6e6b1ed0185af76 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIUser.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIUser.h
@@ -73,7 +73,7 @@ public:
     void setUserStatus(const qint32 &user_status);
 
     
-    
+
     virtual bool isSet() const override;
     virtual bool isValid() const override;
 
diff --git a/samples/client/petstore/cpp-qt5/client/OAIUserApi.cpp b/samples/client/petstore/cpp-qt5/client/OAIUserApi.cpp
index 36a418994f97dd89a1f8e29104570984db907ad5..57556eab7882392e4432457dca80087c16898247 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIUserApi.cpp
+++ b/samples/client/petstore/cpp-qt5/client/OAIUserApi.cpp
@@ -57,7 +57,7 @@ OAIUserApi::createUser(const OAIUser& body) {
     fullPath.append(this->host).append(this->basePath).append("/user");
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "POST");
 
     
@@ -106,7 +106,7 @@ OAIUserApi::createUsersWithArrayInput(const QList<OAIUser>& body) {
     fullPath.append(this->host).append(this->basePath).append("/user/createWithArray");
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "POST");
 
     
@@ -156,7 +156,7 @@ OAIUserApi::createUsersWithListInput(const QList<OAIUser>& body) {
     fullPath.append(this->host).append(this->basePath).append("/user/createWithList");
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "POST");
 
     
@@ -204,12 +204,12 @@ void
 OAIUserApi::deleteUser(const QString& username) {
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("/user/{username}");
-    QString usernamePathParam("{"); 
+    QString usernamePathParam("{");
     usernamePathParam.append("username").append("}");
     fullPath.replace(usernamePathParam, QUrl::toPercentEncoding(::OpenAPI::toStringValue(username)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "DELETE");
 
 
@@ -252,12 +252,12 @@ void
 OAIUserApi::getUserByName(const QString& username) {
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("/user/{username}");
-    QString usernamePathParam("{"); 
+    QString usernamePathParam("{");
     usernamePathParam.append("username").append("}");
     fullPath.replace(usernamePathParam, QUrl::toPercentEncoding(::OpenAPI::toStringValue(username)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "GET");
 
 
@@ -319,7 +319,7 @@ OAIUserApi::loginUser(const QString& username, const QString& password) {
         .append(QUrl::toPercentEncoding(::OpenAPI::toStringValue(password)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "GET");
 
 
@@ -347,7 +347,7 @@ OAIUserApi::loginUserCallback(OAIHttpRequestWorker * worker) {
     else {
         msg = "Error: " + worker->error_str;
     }
-    QString output;  
+    QString output;
     ::OpenAPI::fromStringValue(QString(worker->response), output);
     worker->deleteLater();
 
@@ -366,7 +366,7 @@ OAIUserApi::logoutUser() {
     fullPath.append(this->host).append(this->basePath).append("/user/logout");
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "GET");
 
 
@@ -409,12 +409,12 @@ void
 OAIUserApi::updateUser(const QString& username, const OAIUser& body) {
     QString fullPath;
     fullPath.append(this->host).append(this->basePath).append("/user/{username}");
-    QString usernamePathParam("{"); 
+    QString usernamePathParam("{");
     usernamePathParam.append("username").append("}");
     fullPath.replace(usernamePathParam, QUrl::toPercentEncoding(::OpenAPI::toStringValue(username)));
     
     OAIHttpRequestWorker *worker = new OAIHttpRequestWorker();
-    worker->setTimeOut(timeout);    
+    worker->setTimeOut(timeout);
     OAIHttpRequestInput input(fullPath, "PUT");
 
     
diff --git a/samples/client/petstore/cpp-qt5/client/OAIUserApi.h b/samples/client/petstore/cpp-qt5/client/OAIUserApi.h
index d95814e0710f7f109a42664c75dfcc2515a52521..454210caa6d2029e290dd5766ccea9189aaa5465 100644
--- a/samples/client/petstore/cpp-qt5/client/OAIUserApi.h
+++ b/samples/client/petstore/cpp-qt5/client/OAIUserApi.h
@@ -35,7 +35,7 @@ public:
     void setHost(const QString& host);
     void setApiTimeOutMs(const int tout);
     void addHeaders(const QString& key, const QString& value);
-    
+
     void createUser(const OAIUser& body);
     void createUsersWithArrayInput(const QList<OAIUser>& body);
     void createUsersWithListInput(const QList<OAIUser>& body);
diff --git a/samples/client/petstore/cpp-qt5/client/client.pri b/samples/client/petstore/cpp-qt5/client/client.pri
index c2b0a272a17cbf406e3009644caa098ca36ba3ef..ca6c9b55245790ac04faae3e4478bd904ded7798 100644
--- a/samples/client/petstore/cpp-qt5/client/client.pri
+++ b/samples/client/petstore/cpp-qt5/client/client.pri
@@ -16,7 +16,7 @@ HEADERS += \
     $${PWD}/OAIHelpers.h \
     $${PWD}/OAIHttpRequest.h \
     $${PWD}/OAIObject.h
-    $${PWD}/OAIEnum.h    
+    $${PWD}/OAIEnum.h
 
 SOURCES += \
 # Models
diff --git a/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/.openapi-generator/VERSION b/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/.openapi-generator/VERSION
index 479c313e87b9d6831eb89b5786aff0d08d26daf6..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/.openapi-generator/VERSION
+++ b/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.3-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/README.md b/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/README.md
index 291b60d7e6b58ce5f8c6330c1c4764f4f98a5e74..693df464eb0c7a9dc246c8a0821155e91a7e6c54 100644
--- a/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/README.md
+++ b/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/README.md
@@ -4,7 +4,6 @@ This is a sample server Petstore server. For this sample, you can use the api ke
 This Dart package is automatically generated by the [Open API Codegen](https://github.com/OpenAPITools/openapi-generator) project:
 
 - API version: 1.0.0
-- Build date: 2019-06-29T09:47:15.495+12:00[Pacific/Auckland]
 - Build package: org.openapitools.codegen.languages.DartJaguarClientCodegen
 
 ## Requirements
diff --git a/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/lib/api.dart b/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/lib/api.dart
index b787b0405de32b06f307edfe3c9e0faa234e62f6..d077b86fe99b89b9f70f7f7fa42193bae5ae92f3 100644
--- a/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/lib/api.dart
+++ b/samples/client/petstore/dart-jaguar/flutter_petstore/openapi/lib/api.dart
@@ -29,7 +29,7 @@ final _jsonJaguarRepo = JsonRepo()
 ..add(TagSerializer())
 ..add(UserSerializer())
 ;
-final Map<String, CodecRepo> converters = {
+final Map<String, CodecRepo> defaultConverters = {
     MimeTypes.json: _jsonJaguarRepo,
 };
 
@@ -86,7 +86,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return PetApi(base: base, converters: converters, timeout: timeout);
     }
@@ -101,7 +101,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return StoreApi(base: base, converters: converters, timeout: timeout);
     }
@@ -116,7 +116,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return UserApi(base: base, converters: converters, timeout: timeout);
     }
diff --git a/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/.openapi-generator/VERSION b/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/.openapi-generator/VERSION
index 479c313e87b9d6831eb89b5786aff0d08d26daf6..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/.openapi-generator/VERSION
+++ b/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.3-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/README.md b/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/README.md
index 82778678423f8f3124d39293b8eb459648d982de..693df464eb0c7a9dc246c8a0821155e91a7e6c54 100644
--- a/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/README.md
+++ b/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/README.md
@@ -4,7 +4,6 @@ This is a sample server Petstore server. For this sample, you can use the api ke
 This Dart package is automatically generated by the [Open API Codegen](https://github.com/OpenAPITools/openapi-generator) project:
 
 - API version: 1.0.0
-- Build date: 2019-06-29T09:47:16.421+12:00[Pacific/Auckland]
 - Build package: org.openapitools.codegen.languages.DartJaguarClientCodegen
 
 ## Requirements
diff --git a/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/lib/api.dart b/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/lib/api.dart
index 12dcdff72fea01e949bb1e439f9af0339aa19693..60148b8f58492b282641cf1986d9ba5007a020f8 100644
--- a/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/lib/api.dart
+++ b/samples/client/petstore/dart-jaguar/flutter_proto_petstore/openapi/lib/api.dart
@@ -39,7 +39,7 @@ final _jsonJaguarRepo = ProtoCodecRepo(isJsonFormatEnabled: true)
 ..add((data) => Tag.fromBuffer(List<int>.from(data)))
 ..add((data) => User.fromBuffer(List<int>.from(data)))
 ;
-final Map<String, CodecRepo> converters = {
+final Map<String, CodecRepo> defaultConverters = {
     MimeTypes.json: _jsonJaguarRepo,
     MimeTypes.binary: _protoJaguarRepo,
 };
@@ -96,7 +96,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return PetApi(base: base, converters: converters, timeout: timeout);
     }
@@ -111,7 +111,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return StoreApi(base: base, converters: converters, timeout: timeout);
     }
@@ -126,7 +126,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return UserApi(base: base, converters: converters, timeout: timeout);
     }
diff --git a/samples/client/petstore/dart-jaguar/openapi/.openapi-generator/VERSION b/samples/client/petstore/dart-jaguar/openapi/.openapi-generator/VERSION
index 479c313e87b9d6831eb89b5786aff0d08d26daf6..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/dart-jaguar/openapi/.openapi-generator/VERSION
+++ b/samples/client/petstore/dart-jaguar/openapi/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.3-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/dart-jaguar/openapi/README.md b/samples/client/petstore/dart-jaguar/openapi/README.md
index 7f45064333083a49e57b5974d19046474912a6ed..693df464eb0c7a9dc246c8a0821155e91a7e6c54 100644
--- a/samples/client/petstore/dart-jaguar/openapi/README.md
+++ b/samples/client/petstore/dart-jaguar/openapi/README.md
@@ -4,7 +4,6 @@ This is a sample server Petstore server. For this sample, you can use the api ke
 This Dart package is automatically generated by the [Open API Codegen](https://github.com/OpenAPITools/openapi-generator) project:
 
 - API version: 1.0.0
-- Build date: 2019-06-29T09:47:14.533+12:00[Pacific/Auckland]
 - Build package: org.openapitools.codegen.languages.DartJaguarClientCodegen
 
 ## Requirements
diff --git a/samples/client/petstore/dart-jaguar/openapi/lib/api.dart b/samples/client/petstore/dart-jaguar/openapi/lib/api.dart
index b787b0405de32b06f307edfe3c9e0faa234e62f6..d077b86fe99b89b9f70f7f7fa42193bae5ae92f3 100644
--- a/samples/client/petstore/dart-jaguar/openapi/lib/api.dart
+++ b/samples/client/petstore/dart-jaguar/openapi/lib/api.dart
@@ -29,7 +29,7 @@ final _jsonJaguarRepo = JsonRepo()
 ..add(TagSerializer())
 ..add(UserSerializer())
 ;
-final Map<String, CodecRepo> converters = {
+final Map<String, CodecRepo> defaultConverters = {
     MimeTypes.json: _jsonJaguarRepo,
 };
 
@@ -86,7 +86,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return PetApi(base: base, converters: converters, timeout: timeout);
     }
@@ -101,7 +101,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return StoreApi(base: base, converters: converters, timeout: timeout);
     }
@@ -116,7 +116,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return UserApi(base: base, converters: converters, timeout: timeout);
     }
diff --git a/samples/client/petstore/dart-jaguar/openapi_proto/.openapi-generator/VERSION b/samples/client/petstore/dart-jaguar/openapi_proto/.openapi-generator/VERSION
index 479c313e87b9d6831eb89b5786aff0d08d26daf6..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/dart-jaguar/openapi_proto/.openapi-generator/VERSION
+++ b/samples/client/petstore/dart-jaguar/openapi_proto/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.3-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/dart-jaguar/openapi_proto/README.md b/samples/client/petstore/dart-jaguar/openapi_proto/README.md
index 84be8a47c9f4688c8cda412a0e270cd77cbc1c73..693df464eb0c7a9dc246c8a0821155e91a7e6c54 100644
--- a/samples/client/petstore/dart-jaguar/openapi_proto/README.md
+++ b/samples/client/petstore/dart-jaguar/openapi_proto/README.md
@@ -4,7 +4,6 @@ This is a sample server Petstore server. For this sample, you can use the api ke
 This Dart package is automatically generated by the [Open API Codegen](https://github.com/OpenAPITools/openapi-generator) project:
 
 - API version: 1.0.0
-- Build date: 2019-06-29T09:47:17.358+12:00[Pacific/Auckland]
 - Build package: org.openapitools.codegen.languages.DartJaguarClientCodegen
 
 ## Requirements
diff --git a/samples/client/petstore/dart-jaguar/openapi_proto/lib/api.dart b/samples/client/petstore/dart-jaguar/openapi_proto/lib/api.dart
index 12dcdff72fea01e949bb1e439f9af0339aa19693..60148b8f58492b282641cf1986d9ba5007a020f8 100644
--- a/samples/client/petstore/dart-jaguar/openapi_proto/lib/api.dart
+++ b/samples/client/petstore/dart-jaguar/openapi_proto/lib/api.dart
@@ -39,7 +39,7 @@ final _jsonJaguarRepo = ProtoCodecRepo(isJsonFormatEnabled: true)
 ..add((data) => Tag.fromBuffer(List<int>.from(data)))
 ..add((data) => User.fromBuffer(List<int>.from(data)))
 ;
-final Map<String, CodecRepo> converters = {
+final Map<String, CodecRepo> defaultConverters = {
     MimeTypes.json: _jsonJaguarRepo,
     MimeTypes.binary: _protoJaguarRepo,
 };
@@ -96,7 +96,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return PetApi(base: base, converters: converters, timeout: timeout);
     }
@@ -111,7 +111,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return StoreApi(base: base, converters: converters, timeout: timeout);
     }
@@ -126,7 +126,7 @@ class Openapi {
             base = _baseRoute;
         }
         if(converters == null) {
-            converters = this.converters;
+            converters = defaultConverters;
         }
         return UserApi(base: base, converters: converters, timeout: timeout);
     }
diff --git a/samples/client/petstore/go-experimental/auth_test.go b/samples/client/petstore/go-experimental/auth_test.go
index 5f817703a886342f6e45e2617f8fbd3253141d27..7da448adced2c4239640b5f1b7898860722da6bc 100644
--- a/samples/client/petstore/go-experimental/auth_test.go
+++ b/samples/client/petstore/go-experimental/auth_test.go
@@ -37,8 +37,9 @@ func TestOAuth2(t *testing.T) {
 	tokenSource := cfg.TokenSource(createContext(nil), &tok)
 	auth := context.WithValue(context.Background(), sw.ContextOAuth2, tokenSource)
 
-	newPet := (sw.Pet{Id: 12992, Name: "gopher",
-		PhotoUrls: []string{"http://1.com", "http://2.com"}, Status: "pending", Tags: []sw.Tag{sw.Tag{Id: 1, Name: "tag2"}}})
+	newPet := (sw.Pet{Id: sw.PtrInt64(12992), Name: sw.PtrString("gopher"),
+		PhotoUrls: &[]string{"http://1.com", "http://2.com"}, Status: sw.PtrString("pending"),
+		Tags: &[]sw.Tag{sw.Tag{Id: sw.PtrInt64(1), Name: sw.PtrString("tag2")}}})
 
 	r, err := client.PetApi.AddPet(context.Background(), newPet)
 
@@ -71,8 +72,9 @@ func TestBasicAuth(t *testing.T) {
 		Password: "f4k3p455",
 	})
 
-	newPet := (sw.Pet{Id: 12992, Name: "gopher",
-		PhotoUrls: []string{"http://1.com", "http://2.com"}, Status: "pending", Tags: []sw.Tag{sw.Tag{Id: 1, Name: "tag2"}}})
+	newPet := (sw.Pet{Id: sw.PtrInt64(12992), Name: sw.PtrString("gopher"),
+		PhotoUrls: &[]string{"http://1.com", "http://2.com"}, Status: sw.PtrString("pending"),
+		Tags: &[]sw.Tag{sw.Tag{Id: sw.PtrInt64(1), Name: sw.PtrString("tag2")}}})
 
 	r, err := client.PetApi.AddPet(auth, newPet)
 
@@ -100,8 +102,9 @@ func TestBasicAuth(t *testing.T) {
 func TestAccessToken(t *testing.T) {
 	auth := context.WithValue(context.Background(), sw.ContextAccessToken, "TESTFAKEACCESSTOKENISFAKE")
 
-	newPet := (sw.Pet{Id: 12992, Name: "gopher",
-		PhotoUrls: []string{"http://1.com", "http://2.com"}, Status: "pending", Tags: []sw.Tag{sw.Tag{Id: 1, Name: "tag2"}}})
+	newPet := (sw.Pet{Id: sw.PtrInt64(12992), Name: sw.PtrString("gopher"),
+		PhotoUrls: &[]string{"http://1.com", "http://2.com"}, Status: sw.PtrString("pending"),
+		Tags: &[]sw.Tag{sw.Tag{Id: sw.PtrInt64(1), Name: sw.PtrString("tag2")}}})
 
 	r, err := client.PetApi.AddPet(nil, newPet)
 
@@ -129,8 +132,9 @@ func TestAccessToken(t *testing.T) {
 func TestAPIKeyNoPrefix(t *testing.T) {
 	auth := context.WithValue(context.Background(), sw.ContextAPIKey, sw.APIKey{Key: "TEST123"})
 
-	newPet := (sw.Pet{Id: 12992, Name: "gopher",
-		PhotoUrls: []string{"http://1.com", "http://2.com"}, Status: "pending", Tags: []sw.Tag{sw.Tag{Id: 1, Name: "tag2"}}})
+	newPet := (sw.Pet{Id: sw.PtrInt64(12992), Name: sw.PtrString("gopher"),
+		PhotoUrls: &[]string{"http://1.com", "http://2.com"}, Status: sw.PtrString("pending"),
+		Tags: &[]sw.Tag{sw.Tag{Id: sw.PtrInt64(1), Name: sw.PtrString("tag2")}}})
 
 	r, err := client.PetApi.AddPet(context.Background(), newPet)
 
@@ -163,8 +167,9 @@ func TestAPIKeyNoPrefix(t *testing.T) {
 func TestAPIKeyWithPrefix(t *testing.T) {
 	auth := context.WithValue(context.Background(), sw.ContextAPIKey, sw.APIKey{Key: "TEST123", Prefix: "Bearer"})
 
-	newPet := (sw.Pet{Id: 12992, Name: "gopher",
-		PhotoUrls: []string{"http://1.com", "http://2.com"}, Status: "pending", Tags: []sw.Tag{sw.Tag{Id: 1, Name: "tag2"}}})
+	newPet := (sw.Pet{Id: sw.PtrInt64(12992), Name: sw.PtrString("gopher"),
+		PhotoUrls: &[]string{"http://1.com", "http://2.com"}, Status: sw.PtrString("pending"),
+		Tags: &[]sw.Tag{sw.Tag{Id: sw.PtrInt64(1), Name: sw.PtrString("tag2")}}})
 
 	r, err := client.PetApi.AddPet(nil, newPet)
 
@@ -196,8 +201,9 @@ func TestAPIKeyWithPrefix(t *testing.T) {
 
 func TestDefaultHeader(t *testing.T) {
 
-	newPet := (sw.Pet{Id: 12992, Name: "gopher",
-		PhotoUrls: []string{"http://1.com", "http://2.com"}, Status: "pending", Tags: []sw.Tag{sw.Tag{Id: 1, Name: "tag2"}}})
+	newPet := (sw.Pet{Id: sw.PtrInt64(12992), Name: sw.PtrString("gopher"),
+		PhotoUrls: &[]string{"http://1.com", "http://2.com"}, Status: sw.PtrString("pending"),
+		Tags: &[]sw.Tag{sw.Tag{Id: sw.PtrInt64(1), Name: sw.PtrString("tag2")}}})
 
 	r, err := client.PetApi.AddPet(context.Background(), newPet)
 
diff --git a/samples/client/petstore/go-experimental/fake_api_test.go b/samples/client/petstore/go-experimental/fake_api_test.go
index f4242b5048c0292e08a838ead2d6aacceb3c3424..e97bcb4846a8f45573c2e7b84f046e5e9adb4c51 100644
--- a/samples/client/petstore/go-experimental/fake_api_test.go
+++ b/samples/client/petstore/go-experimental/fake_api_test.go
@@ -14,8 +14,8 @@ func TestPutBodyWithFileSchema(t *testing.T) {
 	return // early return to test compilation
 
 	schema := sw.FileSchemaTestClass{
-		File:  sw.File{SourceURI: "https://example.com/image.png"},
-		Files: []sw.File{{SourceURI: "https://example.com/image.png"}}}
+		File:  &sw.File{SourceURI: sw.PtrString("https://example.com/image.png")},
+		Files: &[]sw.File{{SourceURI: sw.PtrString("https://example.com/image.png")}}}
 
 	r, err := client.FakeApi.TestBodyWithFileSchema(context.Background(), schema)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/.openapi-generator/VERSION b/samples/client/petstore/go-experimental/go-petstore/.openapi-generator/VERSION
index 479c313e87b9d6831eb89b5786aff0d08d26daf6..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/go-experimental/go-petstore/.openapi-generator/VERSION
+++ b/samples/client/petstore/go-experimental/go-petstore/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.3-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/go-experimental/go-petstore/README.md b/samples/client/petstore/go-experimental/go-petstore/README.md
index 025ee80f2e4a3db1b0c7554d6c875c69331e05ad..f9cf57d259d335e00ef6b354ad2c9c4d75a0da47 100644
--- a/samples/client/petstore/go-experimental/go-petstore/README.md
+++ b/samples/client/petstore/go-experimental/go-petstore/README.md
@@ -199,6 +199,22 @@ r, err := client.Service.Operation(auth, args)
 ```
 
 
+## Documentation for Utility Methods
+
+Due to the fact that model structure members are all pointers, this package contains
+a number of utility functions to easily obtain pointers to values of basic types.
+Each of these functions takes a value of the given basic type and returns a pointer to it:
+
+* `PtrBool`
+* `PtrInt`
+* `PtrInt32`
+* `PtrInt64`
+* `PtrFloat`
+* `PtrFloat32`
+* `PtrFloat64`
+* `PtrString`
+* `PtrTime`
+
 ## Author
 
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesAnyType.md b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesAnyType.md
index eadec3142ce8918ae1dac1880c9b71f9a27ac20e..47b71f2a71f7c1b32542f7c501ce39dae8f927c9 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesAnyType.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesAnyType.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Name** | **string** |  | [optional] 
+**Name** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetName
+
+`func (o *AdditionalPropertiesAnyType) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *AdditionalPropertiesAnyType) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *AdditionalPropertiesAnyType) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *AdditionalPropertiesAnyType) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesArray.md b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesArray.md
index 0c37598aeb2c5a14a3120e6826a4268bdcf35258..b8d3d2e343e07c5d68eb33fd9aa55684eebdd4d4 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesArray.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesArray.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Name** | **string** |  | [optional] 
+**Name** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetName
+
+`func (o *AdditionalPropertiesArray) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *AdditionalPropertiesArray) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *AdditionalPropertiesArray) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *AdditionalPropertiesArray) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesBoolean.md b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesBoolean.md
index 7190fe8429b83a54c56acbf31219daff0e18592a..2c27fcebb9ba7133872afc8c88b455ebe61ff206 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesBoolean.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesBoolean.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Name** | **string** |  | [optional] 
+**Name** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetName
+
+`func (o *AdditionalPropertiesBoolean) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *AdditionalPropertiesBoolean) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *AdditionalPropertiesBoolean) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *AdditionalPropertiesBoolean) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesClass.md b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesClass.md
index 877a5d45a316be8726f1348ccebb52f42dc7073d..a676667ed75275aef7f61a1f3586857f3d4b8aad 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesClass.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesClass.md
@@ -4,17 +4,295 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**MapString** | **map[string]string** |  | [optional] 
-**MapNumber** | **map[string]float32** |  | [optional] 
-**MapInteger** | **map[string]int32** |  | [optional] 
-**MapBoolean** | **map[string]bool** |  | [optional] 
-**MapArrayInteger** | [**map[string][]int32**](array.md) |  | [optional] 
-**MapArrayAnytype** | [**map[string][]map[string]interface{}**](array.md) |  | [optional] 
-**MapMapString** | [**map[string]map[string]string**](map.md) |  | [optional] 
-**MapMapAnytype** | [**map[string]map[string]map[string]interface{}**](map.md) |  | [optional] 
-**Anytype1** | [**map[string]interface{}**](.md) |  | [optional] 
-**Anytype2** | [**map[string]interface{}**](.md) |  | [optional] 
-**Anytype3** | [**map[string]interface{}**](.md) |  | [optional] 
+**MapString** | Pointer to **map[string]string** |  | [optional]
+**MapNumber** | Pointer to **map[string]float32** |  | [optional]
+**MapInteger** | Pointer to **map[string]int32** |  | [optional]
+**MapBoolean** | Pointer to **map[string]bool** |  | [optional]
+**MapArrayInteger** | Pointer to [**map[string][]int32**](array.md) |  | [optional]
+**MapArrayAnytype** | Pointer to [**map[string][]map[string]interface{}**](array.md) |  | [optional]
+**MapMapString** | Pointer to [**map[string]map[string]string**](map.md) |  | [optional]
+**MapMapAnytype** | Pointer to [**map[string]map[string]map[string]interface{}**](map.md) |  | [optional]
+**Anytype1** | Pointer to [**map[string]interface{}**](.md) |  | [optional]
+**Anytype2** | Pointer to [**map[string]interface{}**](.md) |  | [optional]
+**Anytype3** | Pointer to [**map[string]interface{}**](.md) |  | [optional]
+
+## Methods
+
+### GetMapString
+
+`func (o *AdditionalPropertiesClass) GetMapString() map[string]string`
+
+GetMapString returns the MapString field if non-nil, zero value otherwise.
+
+### GetMapStringOk
+
+`func (o *AdditionalPropertiesClass) GetMapStringOk() (map[string]string, bool)`
+
+GetMapStringOk returns a tuple with the MapString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapString
+
+`func (o *AdditionalPropertiesClass) HasMapString() bool`
+
+HasMapString returns a boolean if a field has been set.
+
+### SetMapString
+
+`func (o *AdditionalPropertiesClass) SetMapString(v map[string]string)`
+
+SetMapString gets a reference to the given map[string]string and assigns it to the MapString field.
+
+### GetMapNumber
+
+`func (o *AdditionalPropertiesClass) GetMapNumber() map[string]float32`
+
+GetMapNumber returns the MapNumber field if non-nil, zero value otherwise.
+
+### GetMapNumberOk
+
+`func (o *AdditionalPropertiesClass) GetMapNumberOk() (map[string]float32, bool)`
+
+GetMapNumberOk returns a tuple with the MapNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapNumber
+
+`func (o *AdditionalPropertiesClass) HasMapNumber() bool`
+
+HasMapNumber returns a boolean if a field has been set.
+
+### SetMapNumber
+
+`func (o *AdditionalPropertiesClass) SetMapNumber(v map[string]float32)`
+
+SetMapNumber gets a reference to the given map[string]float32 and assigns it to the MapNumber field.
+
+### GetMapInteger
+
+`func (o *AdditionalPropertiesClass) GetMapInteger() map[string]int32`
+
+GetMapInteger returns the MapInteger field if non-nil, zero value otherwise.
+
+### GetMapIntegerOk
+
+`func (o *AdditionalPropertiesClass) GetMapIntegerOk() (map[string]int32, bool)`
+
+GetMapIntegerOk returns a tuple with the MapInteger field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapInteger
+
+`func (o *AdditionalPropertiesClass) HasMapInteger() bool`
+
+HasMapInteger returns a boolean if a field has been set.
+
+### SetMapInteger
+
+`func (o *AdditionalPropertiesClass) SetMapInteger(v map[string]int32)`
+
+SetMapInteger gets a reference to the given map[string]int32 and assigns it to the MapInteger field.
+
+### GetMapBoolean
+
+`func (o *AdditionalPropertiesClass) GetMapBoolean() map[string]bool`
+
+GetMapBoolean returns the MapBoolean field if non-nil, zero value otherwise.
+
+### GetMapBooleanOk
+
+`func (o *AdditionalPropertiesClass) GetMapBooleanOk() (map[string]bool, bool)`
+
+GetMapBooleanOk returns a tuple with the MapBoolean field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapBoolean
+
+`func (o *AdditionalPropertiesClass) HasMapBoolean() bool`
+
+HasMapBoolean returns a boolean if a field has been set.
+
+### SetMapBoolean
+
+`func (o *AdditionalPropertiesClass) SetMapBoolean(v map[string]bool)`
+
+SetMapBoolean gets a reference to the given map[string]bool and assigns it to the MapBoolean field.
+
+### GetMapArrayInteger
+
+`func (o *AdditionalPropertiesClass) GetMapArrayInteger() map[string][]int32`
+
+GetMapArrayInteger returns the MapArrayInteger field if non-nil, zero value otherwise.
+
+### GetMapArrayIntegerOk
+
+`func (o *AdditionalPropertiesClass) GetMapArrayIntegerOk() (map[string][]int32, bool)`
+
+GetMapArrayIntegerOk returns a tuple with the MapArrayInteger field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapArrayInteger
+
+`func (o *AdditionalPropertiesClass) HasMapArrayInteger() bool`
+
+HasMapArrayInteger returns a boolean if a field has been set.
+
+### SetMapArrayInteger
+
+`func (o *AdditionalPropertiesClass) SetMapArrayInteger(v map[string][]int32)`
+
+SetMapArrayInteger gets a reference to the given map[string][]int32 and assigns it to the MapArrayInteger field.
+
+### GetMapArrayAnytype
+
+`func (o *AdditionalPropertiesClass) GetMapArrayAnytype() map[string][]map[string]interface{}`
+
+GetMapArrayAnytype returns the MapArrayAnytype field if non-nil, zero value otherwise.
+
+### GetMapArrayAnytypeOk
+
+`func (o *AdditionalPropertiesClass) GetMapArrayAnytypeOk() (map[string][]map[string]interface{}, bool)`
+
+GetMapArrayAnytypeOk returns a tuple with the MapArrayAnytype field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapArrayAnytype
+
+`func (o *AdditionalPropertiesClass) HasMapArrayAnytype() bool`
+
+HasMapArrayAnytype returns a boolean if a field has been set.
+
+### SetMapArrayAnytype
+
+`func (o *AdditionalPropertiesClass) SetMapArrayAnytype(v map[string][]map[string]interface{})`
+
+SetMapArrayAnytype gets a reference to the given map[string][]map[string]interface{} and assigns it to the MapArrayAnytype field.
+
+### GetMapMapString
+
+`func (o *AdditionalPropertiesClass) GetMapMapString() map[string]map[string]string`
+
+GetMapMapString returns the MapMapString field if non-nil, zero value otherwise.
+
+### GetMapMapStringOk
+
+`func (o *AdditionalPropertiesClass) GetMapMapStringOk() (map[string]map[string]string, bool)`
+
+GetMapMapStringOk returns a tuple with the MapMapString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapMapString
+
+`func (o *AdditionalPropertiesClass) HasMapMapString() bool`
+
+HasMapMapString returns a boolean if a field has been set.
+
+### SetMapMapString
+
+`func (o *AdditionalPropertiesClass) SetMapMapString(v map[string]map[string]string)`
+
+SetMapMapString gets a reference to the given map[string]map[string]string and assigns it to the MapMapString field.
+
+### GetMapMapAnytype
+
+`func (o *AdditionalPropertiesClass) GetMapMapAnytype() map[string]map[string]map[string]interface{}`
+
+GetMapMapAnytype returns the MapMapAnytype field if non-nil, zero value otherwise.
+
+### GetMapMapAnytypeOk
+
+`func (o *AdditionalPropertiesClass) GetMapMapAnytypeOk() (map[string]map[string]map[string]interface{}, bool)`
+
+GetMapMapAnytypeOk returns a tuple with the MapMapAnytype field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapMapAnytype
+
+`func (o *AdditionalPropertiesClass) HasMapMapAnytype() bool`
+
+HasMapMapAnytype returns a boolean if a field has been set.
+
+### SetMapMapAnytype
+
+`func (o *AdditionalPropertiesClass) SetMapMapAnytype(v map[string]map[string]map[string]interface{})`
+
+SetMapMapAnytype gets a reference to the given map[string]map[string]map[string]interface{} and assigns it to the MapMapAnytype field.
+
+### GetAnytype1
+
+`func (o *AdditionalPropertiesClass) GetAnytype1() map[string]interface{}`
+
+GetAnytype1 returns the Anytype1 field if non-nil, zero value otherwise.
+
+### GetAnytype1Ok
+
+`func (o *AdditionalPropertiesClass) GetAnytype1Ok() (map[string]interface{}, bool)`
+
+GetAnytype1Ok returns a tuple with the Anytype1 field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasAnytype1
+
+`func (o *AdditionalPropertiesClass) HasAnytype1() bool`
+
+HasAnytype1 returns a boolean if a field has been set.
+
+### SetAnytype1
+
+`func (o *AdditionalPropertiesClass) SetAnytype1(v map[string]interface{})`
+
+SetAnytype1 gets a reference to the given map[string]interface{} and assigns it to the Anytype1 field.
+
+### GetAnytype2
+
+`func (o *AdditionalPropertiesClass) GetAnytype2() map[string]interface{}`
+
+GetAnytype2 returns the Anytype2 field if non-nil, zero value otherwise.
+
+### GetAnytype2Ok
+
+`func (o *AdditionalPropertiesClass) GetAnytype2Ok() (map[string]interface{}, bool)`
+
+GetAnytype2Ok returns a tuple with the Anytype2 field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasAnytype2
+
+`func (o *AdditionalPropertiesClass) HasAnytype2() bool`
+
+HasAnytype2 returns a boolean if a field has been set.
+
+### SetAnytype2
+
+`func (o *AdditionalPropertiesClass) SetAnytype2(v map[string]interface{})`
+
+SetAnytype2 gets a reference to the given map[string]interface{} and assigns it to the Anytype2 field.
+
+### GetAnytype3
+
+`func (o *AdditionalPropertiesClass) GetAnytype3() map[string]interface{}`
+
+GetAnytype3 returns the Anytype3 field if non-nil, zero value otherwise.
+
+### GetAnytype3Ok
+
+`func (o *AdditionalPropertiesClass) GetAnytype3Ok() (map[string]interface{}, bool)`
+
+GetAnytype3Ok returns a tuple with the Anytype3 field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasAnytype3
+
+`func (o *AdditionalPropertiesClass) HasAnytype3() bool`
+
+HasAnytype3 returns a boolean if a field has been set.
+
+### SetAnytype3
+
+`func (o *AdditionalPropertiesClass) SetAnytype3(v map[string]interface{})`
+
+SetAnytype3 gets a reference to the given map[string]interface{} and assigns it to the Anytype3 field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesInteger.md b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesInteger.md
index 34e6fca8fb00c0ab8a2605c6c7f8bce55985abbf..5db6d8671d5d2ab1cd90762aa8704ca6729fe58f 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesInteger.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesInteger.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Name** | **string** |  | [optional] 
+**Name** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetName
+
+`func (o *AdditionalPropertiesInteger) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *AdditionalPropertiesInteger) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *AdditionalPropertiesInteger) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *AdditionalPropertiesInteger) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesNumber.md b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesNumber.md
index 6d41fd2315c7933b10c275aa230c4bc5bbbd5aa5..585ee570058a5b29f0a02446942ead435431e824 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesNumber.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesNumber.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Name** | **string** |  | [optional] 
+**Name** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetName
+
+`func (o *AdditionalPropertiesNumber) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *AdditionalPropertiesNumber) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *AdditionalPropertiesNumber) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *AdditionalPropertiesNumber) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesObject.md b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesObject.md
index b856de693b16682cc8b7bf68992b7d0d6dcbb8ca..d71afb49433770322d81f7e07d9afcbccf16047f 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesObject.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesObject.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Name** | **string** |  | [optional] 
+**Name** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetName
+
+`func (o *AdditionalPropertiesObject) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *AdditionalPropertiesObject) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *AdditionalPropertiesObject) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *AdditionalPropertiesObject) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesString.md b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesString.md
index 69ad2065685849b3ddedb6e386f66c9a20ed0bc2..72bbc5d7fd88aa8c9fc921c998549a69de6a5ad0 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesString.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/AdditionalPropertiesString.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Name** | **string** |  | [optional] 
+**Name** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetName
+
+`func (o *AdditionalPropertiesString) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *AdditionalPropertiesString) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *AdditionalPropertiesString) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *AdditionalPropertiesString) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Animal.md b/samples/client/petstore/go-experimental/go-petstore/docs/Animal.md
index 02d23377da6d68ce99cc93addf4ebfd863db6217..55133b29745a5fd77dd2acf374903b8a2e1c96cf 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Animal.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Animal.md
@@ -4,8 +4,61 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**ClassName** | **string** |  | 
-**Color** | **string** |  | [optional] [default to red]
+**ClassName** | Pointer to **string** |  | 
+**Color** | Pointer to **string** |  | [optional] [default to red]
+
+## Methods
+
+### GetClassName
+
+`func (o *Animal) GetClassName() string`
+
+GetClassName returns the ClassName field if non-nil, zero value otherwise.
+
+### GetClassNameOk
+
+`func (o *Animal) GetClassNameOk() (string, bool)`
+
+GetClassNameOk returns a tuple with the ClassName field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasClassName
+
+`func (o *Animal) HasClassName() bool`
+
+HasClassName returns a boolean if a field has been set.
+
+### SetClassName
+
+`func (o *Animal) SetClassName(v string)`
+
+SetClassName gets a reference to the given string and assigns it to the ClassName field.
+
+### GetColor
+
+`func (o *Animal) GetColor() string`
+
+GetColor returns the Color field if non-nil, zero value otherwise.
+
+### GetColorOk
+
+`func (o *Animal) GetColorOk() (string, bool)`
+
+GetColorOk returns a tuple with the Color field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasColor
+
+`func (o *Animal) HasColor() bool`
+
+HasColor returns a boolean if a field has been set.
+
+### SetColor
+
+`func (o *Animal) SetColor(v string)`
+
+SetColor gets a reference to the given string and assigns it to the Color field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/ApiResponse.md b/samples/client/petstore/go-experimental/go-petstore/docs/ApiResponse.md
index 41d28fb578c10619ecced320634e9f4b38740e85..3dd402a3316beb858eab262979153d7d626ddc86 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/ApiResponse.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/ApiResponse.md
@@ -4,9 +4,87 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Code** | **int32** |  | [optional] 
-**Type** | **string** |  | [optional] 
-**Message** | **string** |  | [optional] 
+**Code** | Pointer to **int32** |  | [optional]
+**Type** | Pointer to **string** |  | [optional]
+**Message** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetCode
+
+`func (o *ApiResponse) GetCode() int32`
+
+GetCode returns the Code field if non-nil, zero value otherwise.
+
+### GetCodeOk
+
+`func (o *ApiResponse) GetCodeOk() (int32, bool)`
+
+GetCodeOk returns a tuple with the Code field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasCode
+
+`func (o *ApiResponse) HasCode() bool`
+
+HasCode returns a boolean if a field has been set.
+
+### SetCode
+
+`func (o *ApiResponse) SetCode(v int32)`
+
+SetCode gets a reference to the given int32 and assigns it to the Code field.
+
+### GetType
+
+`func (o *ApiResponse) GetType() string`
+
+GetType returns the Type field if non-nil, zero value otherwise.
+
+### GetTypeOk
+
+`func (o *ApiResponse) GetTypeOk() (string, bool)`
+
+GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasType
+
+`func (o *ApiResponse) HasType() bool`
+
+HasType returns a boolean if a field has been set.
+
+### SetType
+
+`func (o *ApiResponse) SetType(v string)`
+
+SetType gets a reference to the given string and assigns it to the Type field.
+
+### GetMessage
+
+`func (o *ApiResponse) GetMessage() string`
+
+GetMessage returns the Message field if non-nil, zero value otherwise.
+
+### GetMessageOk
+
+`func (o *ApiResponse) GetMessageOk() (string, bool)`
+
+GetMessageOk returns a tuple with the Message field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMessage
+
+`func (o *ApiResponse) HasMessage() bool`
+
+HasMessage returns a boolean if a field has been set.
+
+### SetMessage
+
+`func (o *ApiResponse) SetMessage(v string)`
+
+SetMessage gets a reference to the given string and assigns it to the Message field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/ArrayOfArrayOfNumberOnly.md b/samples/client/petstore/go-experimental/go-petstore/docs/ArrayOfArrayOfNumberOnly.md
index 555213013b200b3366c0df172ac33555b7a4b5d4..6e776c78ba64332735dd6a157b611a023838c2af 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/ArrayOfArrayOfNumberOnly.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/ArrayOfArrayOfNumberOnly.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**ArrayArrayNumber** | [**[][]float32**](array.md) |  | [optional] 
+**ArrayArrayNumber** | Pointer to [**[][]float32**](array.md) |  | [optional]
+
+## Methods
+
+### GetArrayArrayNumber
+
+`func (o *ArrayOfArrayOfNumberOnly) GetArrayArrayNumber() [][]float32`
+
+GetArrayArrayNumber returns the ArrayArrayNumber field if non-nil, zero value otherwise.
+
+### GetArrayArrayNumberOk
+
+`func (o *ArrayOfArrayOfNumberOnly) GetArrayArrayNumberOk() ([][]float32, bool)`
+
+GetArrayArrayNumberOk returns a tuple with the ArrayArrayNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasArrayArrayNumber
+
+`func (o *ArrayOfArrayOfNumberOnly) HasArrayArrayNumber() bool`
+
+HasArrayArrayNumber returns a boolean if a field has been set.
+
+### SetArrayArrayNumber
+
+`func (o *ArrayOfArrayOfNumberOnly) SetArrayArrayNumber(v [][]float32)`
+
+SetArrayArrayNumber gets a reference to the given [][]float32 and assigns it to the ArrayArrayNumber field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/ArrayOfNumberOnly.md b/samples/client/petstore/go-experimental/go-petstore/docs/ArrayOfNumberOnly.md
index 56618756dd77392117b40c3d7761e207c4408818..af74787e38a44ccf4799c5ad6473a5d3ac14a53a 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/ArrayOfNumberOnly.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/ArrayOfNumberOnly.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**ArrayNumber** | **[]float32** |  | [optional] 
+**ArrayNumber** | Pointer to **[]float32** |  | [optional]
+
+## Methods
+
+### GetArrayNumber
+
+`func (o *ArrayOfNumberOnly) GetArrayNumber() []float32`
+
+GetArrayNumber returns the ArrayNumber field if non-nil, zero value otherwise.
+
+### GetArrayNumberOk
+
+`func (o *ArrayOfNumberOnly) GetArrayNumberOk() ([]float32, bool)`
+
+GetArrayNumberOk returns a tuple with the ArrayNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasArrayNumber
+
+`func (o *ArrayOfNumberOnly) HasArrayNumber() bool`
+
+HasArrayNumber returns a boolean if a field has been set.
+
+### SetArrayNumber
+
+`func (o *ArrayOfNumberOnly) SetArrayNumber(v []float32)`
+
+SetArrayNumber gets a reference to the given []float32 and assigns it to the ArrayNumber field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/ArrayTest.md b/samples/client/petstore/go-experimental/go-petstore/docs/ArrayTest.md
index 0da0bc52d2d399733ba07fc2d14d839c726fcc26..7c25df85ffcce88c814e67708731a3f398d77d43 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/ArrayTest.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/ArrayTest.md
@@ -4,9 +4,87 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**ArrayOfString** | **[]string** |  | [optional] 
-**ArrayArrayOfInteger** | [**[][]int64**](array.md) |  | [optional] 
-**ArrayArrayOfModel** | [**[][]ReadOnlyFirst**](array.md) |  | [optional] 
+**ArrayOfString** | Pointer to **[]string** |  | [optional]
+**ArrayArrayOfInteger** | Pointer to [**[][]int64**](array.md) |  | [optional]
+**ArrayArrayOfModel** | Pointer to [**[][]ReadOnlyFirst**](array.md) |  | [optional]
+
+## Methods
+
+### GetArrayOfString
+
+`func (o *ArrayTest) GetArrayOfString() []string`
+
+GetArrayOfString returns the ArrayOfString field if non-nil, zero value otherwise.
+
+### GetArrayOfStringOk
+
+`func (o *ArrayTest) GetArrayOfStringOk() ([]string, bool)`
+
+GetArrayOfStringOk returns a tuple with the ArrayOfString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasArrayOfString
+
+`func (o *ArrayTest) HasArrayOfString() bool`
+
+HasArrayOfString returns a boolean if a field has been set.
+
+### SetArrayOfString
+
+`func (o *ArrayTest) SetArrayOfString(v []string)`
+
+SetArrayOfString gets a reference to the given []string and assigns it to the ArrayOfString field.
+
+### GetArrayArrayOfInteger
+
+`func (o *ArrayTest) GetArrayArrayOfInteger() [][]int64`
+
+GetArrayArrayOfInteger returns the ArrayArrayOfInteger field if non-nil, zero value otherwise.
+
+### GetArrayArrayOfIntegerOk
+
+`func (o *ArrayTest) GetArrayArrayOfIntegerOk() ([][]int64, bool)`
+
+GetArrayArrayOfIntegerOk returns a tuple with the ArrayArrayOfInteger field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasArrayArrayOfInteger
+
+`func (o *ArrayTest) HasArrayArrayOfInteger() bool`
+
+HasArrayArrayOfInteger returns a boolean if a field has been set.
+
+### SetArrayArrayOfInteger
+
+`func (o *ArrayTest) SetArrayArrayOfInteger(v [][]int64)`
+
+SetArrayArrayOfInteger gets a reference to the given [][]int64 and assigns it to the ArrayArrayOfInteger field.
+
+### GetArrayArrayOfModel
+
+`func (o *ArrayTest) GetArrayArrayOfModel() [][]ReadOnlyFirst`
+
+GetArrayArrayOfModel returns the ArrayArrayOfModel field if non-nil, zero value otherwise.
+
+### GetArrayArrayOfModelOk
+
+`func (o *ArrayTest) GetArrayArrayOfModelOk() ([][]ReadOnlyFirst, bool)`
+
+GetArrayArrayOfModelOk returns a tuple with the ArrayArrayOfModel field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasArrayArrayOfModel
+
+`func (o *ArrayTest) HasArrayArrayOfModel() bool`
+
+HasArrayArrayOfModel returns a boolean if a field has been set.
+
+### SetArrayArrayOfModel
+
+`func (o *ArrayTest) SetArrayArrayOfModel(v [][]ReadOnlyFirst)`
+
+SetArrayArrayOfModel gets a reference to the given [][]ReadOnlyFirst and assigns it to the ArrayArrayOfModel field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Capitalization.md b/samples/client/petstore/go-experimental/go-petstore/docs/Capitalization.md
index 426b8eabd9bd452806cb507eb7e0921642e6ad3c..fd856f743e6dbb889387c892a86dfdfe4247e87d 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Capitalization.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Capitalization.md
@@ -4,12 +4,165 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**SmallCamel** | **string** |  | [optional] 
-**CapitalCamel** | **string** |  | [optional] 
-**SmallSnake** | **string** |  | [optional] 
-**CapitalSnake** | **string** |  | [optional] 
-**SCAETHFlowPoints** | **string** |  | [optional] 
-**ATT_NAME** | **string** | Name of the pet  | [optional] 
+**SmallCamel** | Pointer to **string** |  | [optional]
+**CapitalCamel** | Pointer to **string** |  | [optional]
+**SmallSnake** | Pointer to **string** |  | [optional]
+**CapitalSnake** | Pointer to **string** |  | [optional]
+**SCAETHFlowPoints** | Pointer to **string** |  | [optional]
+**ATT_NAME** | Pointer to **string** | Name of the pet  | [optional]
+
+## Methods
+
+### GetSmallCamel
+
+`func (o *Capitalization) GetSmallCamel() string`
+
+GetSmallCamel returns the SmallCamel field if non-nil, zero value otherwise.
+
+### GetSmallCamelOk
+
+`func (o *Capitalization) GetSmallCamelOk() (string, bool)`
+
+GetSmallCamelOk returns a tuple with the SmallCamel field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasSmallCamel
+
+`func (o *Capitalization) HasSmallCamel() bool`
+
+HasSmallCamel returns a boolean if a field has been set.
+
+### SetSmallCamel
+
+`func (o *Capitalization) SetSmallCamel(v string)`
+
+SetSmallCamel gets a reference to the given string and assigns it to the SmallCamel field.
+
+### GetCapitalCamel
+
+`func (o *Capitalization) GetCapitalCamel() string`
+
+GetCapitalCamel returns the CapitalCamel field if non-nil, zero value otherwise.
+
+### GetCapitalCamelOk
+
+`func (o *Capitalization) GetCapitalCamelOk() (string, bool)`
+
+GetCapitalCamelOk returns a tuple with the CapitalCamel field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasCapitalCamel
+
+`func (o *Capitalization) HasCapitalCamel() bool`
+
+HasCapitalCamel returns a boolean if a field has been set.
+
+### SetCapitalCamel
+
+`func (o *Capitalization) SetCapitalCamel(v string)`
+
+SetCapitalCamel gets a reference to the given string and assigns it to the CapitalCamel field.
+
+### GetSmallSnake
+
+`func (o *Capitalization) GetSmallSnake() string`
+
+GetSmallSnake returns the SmallSnake field if non-nil, zero value otherwise.
+
+### GetSmallSnakeOk
+
+`func (o *Capitalization) GetSmallSnakeOk() (string, bool)`
+
+GetSmallSnakeOk returns a tuple with the SmallSnake field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasSmallSnake
+
+`func (o *Capitalization) HasSmallSnake() bool`
+
+HasSmallSnake returns a boolean if a field has been set.
+
+### SetSmallSnake
+
+`func (o *Capitalization) SetSmallSnake(v string)`
+
+SetSmallSnake gets a reference to the given string and assigns it to the SmallSnake field.
+
+### GetCapitalSnake
+
+`func (o *Capitalization) GetCapitalSnake() string`
+
+GetCapitalSnake returns the CapitalSnake field if non-nil, zero value otherwise.
+
+### GetCapitalSnakeOk
+
+`func (o *Capitalization) GetCapitalSnakeOk() (string, bool)`
+
+GetCapitalSnakeOk returns a tuple with the CapitalSnake field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasCapitalSnake
+
+`func (o *Capitalization) HasCapitalSnake() bool`
+
+HasCapitalSnake returns a boolean if a field has been set.
+
+### SetCapitalSnake
+
+`func (o *Capitalization) SetCapitalSnake(v string)`
+
+SetCapitalSnake gets a reference to the given string and assigns it to the CapitalSnake field.
+
+### GetSCAETHFlowPoints
+
+`func (o *Capitalization) GetSCAETHFlowPoints() string`
+
+GetSCAETHFlowPoints returns the SCAETHFlowPoints field if non-nil, zero value otherwise.
+
+### GetSCAETHFlowPointsOk
+
+`func (o *Capitalization) GetSCAETHFlowPointsOk() (string, bool)`
+
+GetSCAETHFlowPointsOk returns a tuple with the SCAETHFlowPoints field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasSCAETHFlowPoints
+
+`func (o *Capitalization) HasSCAETHFlowPoints() bool`
+
+HasSCAETHFlowPoints returns a boolean if a field has been set.
+
+### SetSCAETHFlowPoints
+
+`func (o *Capitalization) SetSCAETHFlowPoints(v string)`
+
+SetSCAETHFlowPoints gets a reference to the given string and assigns it to the SCAETHFlowPoints field.
+
+### GetATT_NAME
+
+`func (o *Capitalization) GetATT_NAME() string`
+
+GetATT_NAME returns the ATT_NAME field if non-nil, zero value otherwise.
+
+### GetATT_NAMEOk
+
+`func (o *Capitalization) GetATT_NAMEOk() (string, bool)`
+
+GetATT_NAMEOk returns a tuple with the ATT_NAME field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasATT_NAME
+
+`func (o *Capitalization) HasATT_NAME() bool`
+
+HasATT_NAME returns a boolean if a field has been set.
+
+### SetATT_NAME
+
+`func (o *Capitalization) SetATT_NAME(v string)`
+
+SetATT_NAME gets a reference to the given string and assigns it to the ATT_NAME field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Cat.md b/samples/client/petstore/go-experimental/go-petstore/docs/Cat.md
index 1ef1f095e947637538a06a8cc74c7b18316f24d7..262e3d04f6de25d757b8ded766167c67b4fe0c3d 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Cat.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Cat.md
@@ -4,9 +4,87 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**ClassName** | **string** |  | 
-**Color** | **string** |  | [optional] [default to red]
-**Declawed** | **bool** |  | [optional] 
+**ClassName** | Pointer to **string** |  | 
+**Color** | Pointer to **string** |  | [optional] [default to red]
+**Declawed** | Pointer to **bool** |  | [optional]
+
+## Methods
+
+### GetClassName
+
+`func (o *Cat) GetClassName() string`
+
+GetClassName returns the ClassName field if non-nil, zero value otherwise.
+
+### GetClassNameOk
+
+`func (o *Cat) GetClassNameOk() (string, bool)`
+
+GetClassNameOk returns a tuple with the ClassName field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasClassName
+
+`func (o *Cat) HasClassName() bool`
+
+HasClassName returns a boolean if a field has been set.
+
+### SetClassName
+
+`func (o *Cat) SetClassName(v string)`
+
+SetClassName gets a reference to the given string and assigns it to the ClassName field.
+
+### GetColor
+
+`func (o *Cat) GetColor() string`
+
+GetColor returns the Color field if non-nil, zero value otherwise.
+
+### GetColorOk
+
+`func (o *Cat) GetColorOk() (string, bool)`
+
+GetColorOk returns a tuple with the Color field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasColor
+
+`func (o *Cat) HasColor() bool`
+
+HasColor returns a boolean if a field has been set.
+
+### SetColor
+
+`func (o *Cat) SetColor(v string)`
+
+SetColor gets a reference to the given string and assigns it to the Color field.
+
+### GetDeclawed
+
+`func (o *Cat) GetDeclawed() bool`
+
+GetDeclawed returns the Declawed field if non-nil, zero value otherwise.
+
+### GetDeclawedOk
+
+`func (o *Cat) GetDeclawedOk() (bool, bool)`
+
+GetDeclawedOk returns a tuple with the Declawed field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasDeclawed
+
+`func (o *Cat) HasDeclawed() bool`
+
+HasDeclawed returns a boolean if a field has been set.
+
+### SetDeclawed
+
+`func (o *Cat) SetDeclawed(v bool)`
+
+SetDeclawed gets a reference to the given bool and assigns it to the Declawed field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/CatAllOf.md b/samples/client/petstore/go-experimental/go-petstore/docs/CatAllOf.md
index c978cee0417fe4acc02ead595cbbf124639dcbfc..a89f0b29fa54fede02d52ddc33ce7d7b564e0205 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/CatAllOf.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/CatAllOf.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Declawed** | **bool** |  | [optional] 
+**Declawed** | Pointer to **bool** |  | [optional]
+
+## Methods
+
+### GetDeclawed
+
+`func (o *CatAllOf) GetDeclawed() bool`
+
+GetDeclawed returns the Declawed field if non-nil, zero value otherwise.
+
+### GetDeclawedOk
+
+`func (o *CatAllOf) GetDeclawedOk() (bool, bool)`
+
+GetDeclawedOk returns a tuple with the Declawed field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasDeclawed
+
+`func (o *CatAllOf) HasDeclawed() bool`
+
+HasDeclawed returns a boolean if a field has been set.
+
+### SetDeclawed
+
+`func (o *CatAllOf) SetDeclawed(v bool)`
+
+SetDeclawed gets a reference to the given bool and assigns it to the Declawed field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Category.md b/samples/client/petstore/go-experimental/go-petstore/docs/Category.md
index 01e8344bd06faea6634fc6598df82c56c17523b0..b8ef18163b83ff3b49f59502182cd4aaa0f6f8b3 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Category.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Category.md
@@ -4,8 +4,61 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Id** | **int64** |  | [optional] 
-**Name** | **string** |  | [default to default-name]
+**Id** | Pointer to **int64** |  | [optional]
+**Name** | Pointer to **string** |  |  [default to default-name]
+
+## Methods
+
+### GetId
+
+`func (o *Category) GetId() int64`
+
+GetId returns the Id field if non-nil, zero value otherwise.
+
+### GetIdOk
+
+`func (o *Category) GetIdOk() (int64, bool)`
+
+GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasId
+
+`func (o *Category) HasId() bool`
+
+HasId returns a boolean if a field has been set.
+
+### SetId
+
+`func (o *Category) SetId(v int64)`
+
+SetId gets a reference to the given int64 and assigns it to the Id field.
+
+### GetName
+
+`func (o *Category) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *Category) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *Category) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *Category) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/ClassModel.md b/samples/client/petstore/go-experimental/go-petstore/docs/ClassModel.md
index 0b925cebb1f62e19078de5c7ba1f280d5cd86a8f..9ceae1f3d0b5638f15d77b4e0c6576bab73023ed 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/ClassModel.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/ClassModel.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Class** | **string** |  | [optional] 
+**Class** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetClass
+
+`func (o *ClassModel) GetClass() string`
+
+GetClass returns the Class field if non-nil, zero value otherwise.
+
+### GetClassOk
+
+`func (o *ClassModel) GetClassOk() (string, bool)`
+
+GetClassOk returns a tuple with the Class field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasClass
+
+`func (o *ClassModel) HasClass() bool`
+
+HasClass returns a boolean if a field has been set.
+
+### SetClass
+
+`func (o *ClassModel) SetClass(v string)`
+
+SetClass gets a reference to the given string and assigns it to the Class field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Client.md b/samples/client/petstore/go-experimental/go-petstore/docs/Client.md
index 551da852eece724376366b4596dece2da09e6688..9787127b16d7d2b915c0b6d3dc4e8bc716fac2c8 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Client.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Client.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Client** | **string** |  | [optional] 
+**Client** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetClient
+
+`func (o *Client) GetClient() string`
+
+GetClient returns the Client field if non-nil, zero value otherwise.
+
+### GetClientOk
+
+`func (o *Client) GetClientOk() (string, bool)`
+
+GetClientOk returns a tuple with the Client field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasClient
+
+`func (o *Client) HasClient() bool`
+
+HasClient returns a boolean if a field has been set.
+
+### SetClient
+
+`func (o *Client) SetClient(v string)`
+
+SetClient gets a reference to the given string and assigns it to the Client field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Dog.md b/samples/client/petstore/go-experimental/go-petstore/docs/Dog.md
index ff35dd5cdca2dd709aeb618ba9c4693a3bd0c962..591ab03c6a64a3c48bcc48b480a968d75b6fbe32 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Dog.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Dog.md
@@ -4,9 +4,87 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**ClassName** | **string** |  | 
-**Color** | **string** |  | [optional] [default to red]
-**Breed** | **string** |  | [optional] 
+**ClassName** | Pointer to **string** |  | 
+**Color** | Pointer to **string** |  | [optional] [default to red]
+**Breed** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetClassName
+
+`func (o *Dog) GetClassName() string`
+
+GetClassName returns the ClassName field if non-nil, zero value otherwise.
+
+### GetClassNameOk
+
+`func (o *Dog) GetClassNameOk() (string, bool)`
+
+GetClassNameOk returns a tuple with the ClassName field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasClassName
+
+`func (o *Dog) HasClassName() bool`
+
+HasClassName returns a boolean if a field has been set.
+
+### SetClassName
+
+`func (o *Dog) SetClassName(v string)`
+
+SetClassName gets a reference to the given string and assigns it to the ClassName field.
+
+### GetColor
+
+`func (o *Dog) GetColor() string`
+
+GetColor returns the Color field if non-nil, zero value otherwise.
+
+### GetColorOk
+
+`func (o *Dog) GetColorOk() (string, bool)`
+
+GetColorOk returns a tuple with the Color field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasColor
+
+`func (o *Dog) HasColor() bool`
+
+HasColor returns a boolean if a field has been set.
+
+### SetColor
+
+`func (o *Dog) SetColor(v string)`
+
+SetColor gets a reference to the given string and assigns it to the Color field.
+
+### GetBreed
+
+`func (o *Dog) GetBreed() string`
+
+GetBreed returns the Breed field if non-nil, zero value otherwise.
+
+### GetBreedOk
+
+`func (o *Dog) GetBreedOk() (string, bool)`
+
+GetBreedOk returns a tuple with the Breed field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasBreed
+
+`func (o *Dog) HasBreed() bool`
+
+HasBreed returns a boolean if a field has been set.
+
+### SetBreed
+
+`func (o *Dog) SetBreed(v string)`
+
+SetBreed gets a reference to the given string and assigns it to the Breed field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/DogAllOf.md b/samples/client/petstore/go-experimental/go-petstore/docs/DogAllOf.md
index b87153e92652b403f360e53f18f1a8372cfb0c78..e5103c49754f7a7f251cc4d72d66d7c2f0d9bc7d 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/DogAllOf.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/DogAllOf.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Breed** | **string** |  | [optional] 
+**Breed** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetBreed
+
+`func (o *DogAllOf) GetBreed() string`
+
+GetBreed returns the Breed field if non-nil, zero value otherwise.
+
+### GetBreedOk
+
+`func (o *DogAllOf) GetBreedOk() (string, bool)`
+
+GetBreedOk returns a tuple with the Breed field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasBreed
+
+`func (o *DogAllOf) HasBreed() bool`
+
+HasBreed returns a boolean if a field has been set.
+
+### SetBreed
+
+`func (o *DogAllOf) SetBreed(v string)`
+
+SetBreed gets a reference to the given string and assigns it to the Breed field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/EnumArrays.md b/samples/client/petstore/go-experimental/go-petstore/docs/EnumArrays.md
index 3021f8818307951c9ca35c553eb9df706ef3f77b..6d6028e96663442532aff50daf33b85e7b36e248 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/EnumArrays.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/EnumArrays.md
@@ -4,8 +4,61 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**JustSymbol** | **string** |  | [optional] 
-**ArrayEnum** | **[]string** |  | [optional] 
+**JustSymbol** | Pointer to **string** |  | [optional]
+**ArrayEnum** | Pointer to **[]string** |  | [optional]
+
+## Methods
+
+### GetJustSymbol
+
+`func (o *EnumArrays) GetJustSymbol() string`
+
+GetJustSymbol returns the JustSymbol field if non-nil, zero value otherwise.
+
+### GetJustSymbolOk
+
+`func (o *EnumArrays) GetJustSymbolOk() (string, bool)`
+
+GetJustSymbolOk returns a tuple with the JustSymbol field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasJustSymbol
+
+`func (o *EnumArrays) HasJustSymbol() bool`
+
+HasJustSymbol returns a boolean if a field has been set.
+
+### SetJustSymbol
+
+`func (o *EnumArrays) SetJustSymbol(v string)`
+
+SetJustSymbol gets a reference to the given string and assigns it to the JustSymbol field.
+
+### GetArrayEnum
+
+`func (o *EnumArrays) GetArrayEnum() []string`
+
+GetArrayEnum returns the ArrayEnum field if non-nil, zero value otherwise.
+
+### GetArrayEnumOk
+
+`func (o *EnumArrays) GetArrayEnumOk() ([]string, bool)`
+
+GetArrayEnumOk returns a tuple with the ArrayEnum field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasArrayEnum
+
+`func (o *EnumArrays) HasArrayEnum() bool`
+
+HasArrayEnum returns a boolean if a field has been set.
+
+### SetArrayEnum
+
+`func (o *EnumArrays) SetArrayEnum(v []string)`
+
+SetArrayEnum gets a reference to the given []string and assigns it to the ArrayEnum field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/EnumClass.md b/samples/client/petstore/go-experimental/go-petstore/docs/EnumClass.md
index c6932388c067996c3ebf9b9fa8cba8948a179436..e231f94bd73c17a4ffba95b33a1b5f4bc3a5b341 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/EnumClass.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/EnumClass.md
@@ -5,6 +5,7 @@
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
 
+
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/EnumTest.md b/samples/client/petstore/go-experimental/go-petstore/docs/EnumTest.md
index eeec09b66b4f2c92469f53c688c4ade06e5bfdd0..f396e0e32a2c7f19aa7c273b63c7ddf4199584e7 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/EnumTest.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/EnumTest.md
@@ -4,11 +4,139 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**EnumString** | **string** |  | [optional] 
-**EnumStringRequired** | **string** |  | 
-**EnumInteger** | **int32** |  | [optional] 
-**EnumNumber** | **float64** |  | [optional] 
-**OuterEnum** | [**OuterEnum**](OuterEnum.md) |  | [optional] 
+**EnumString** | Pointer to **string** |  | [optional]
+**EnumStringRequired** | Pointer to **string** |  | 
+**EnumInteger** | Pointer to **int32** |  | [optional]
+**EnumNumber** | Pointer to **float64** |  | [optional]
+**OuterEnum** | Pointer to [**OuterEnum**](OuterEnum.md) |  | [optional]
+
+## Methods
+
+### GetEnumString
+
+`func (o *EnumTest) GetEnumString() string`
+
+GetEnumString returns the EnumString field if non-nil, zero value otherwise.
+
+### GetEnumStringOk
+
+`func (o *EnumTest) GetEnumStringOk() (string, bool)`
+
+GetEnumStringOk returns a tuple with the EnumString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasEnumString
+
+`func (o *EnumTest) HasEnumString() bool`
+
+HasEnumString returns a boolean if a field has been set.
+
+### SetEnumString
+
+`func (o *EnumTest) SetEnumString(v string)`
+
+SetEnumString gets a reference to the given string and assigns it to the EnumString field.
+
+### GetEnumStringRequired
+
+`func (o *EnumTest) GetEnumStringRequired() string`
+
+GetEnumStringRequired returns the EnumStringRequired field if non-nil, zero value otherwise.
+
+### GetEnumStringRequiredOk
+
+`func (o *EnumTest) GetEnumStringRequiredOk() (string, bool)`
+
+GetEnumStringRequiredOk returns a tuple with the EnumStringRequired field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasEnumStringRequired
+
+`func (o *EnumTest) HasEnumStringRequired() bool`
+
+HasEnumStringRequired returns a boolean if a field has been set.
+
+### SetEnumStringRequired
+
+`func (o *EnumTest) SetEnumStringRequired(v string)`
+
+SetEnumStringRequired gets a reference to the given string and assigns it to the EnumStringRequired field.
+
+### GetEnumInteger
+
+`func (o *EnumTest) GetEnumInteger() int32`
+
+GetEnumInteger returns the EnumInteger field if non-nil, zero value otherwise.
+
+### GetEnumIntegerOk
+
+`func (o *EnumTest) GetEnumIntegerOk() (int32, bool)`
+
+GetEnumIntegerOk returns a tuple with the EnumInteger field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasEnumInteger
+
+`func (o *EnumTest) HasEnumInteger() bool`
+
+HasEnumInteger returns a boolean if a field has been set.
+
+### SetEnumInteger
+
+`func (o *EnumTest) SetEnumInteger(v int32)`
+
+SetEnumInteger gets a reference to the given int32 and assigns it to the EnumInteger field.
+
+### GetEnumNumber
+
+`func (o *EnumTest) GetEnumNumber() float64`
+
+GetEnumNumber returns the EnumNumber field if non-nil, zero value otherwise.
+
+### GetEnumNumberOk
+
+`func (o *EnumTest) GetEnumNumberOk() (float64, bool)`
+
+GetEnumNumberOk returns a tuple with the EnumNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasEnumNumber
+
+`func (o *EnumTest) HasEnumNumber() bool`
+
+HasEnumNumber returns a boolean if a field has been set.
+
+### SetEnumNumber
+
+`func (o *EnumTest) SetEnumNumber(v float64)`
+
+SetEnumNumber gets a reference to the given float64 and assigns it to the EnumNumber field.
+
+### GetOuterEnum
+
+`func (o *EnumTest) GetOuterEnum() OuterEnum`
+
+GetOuterEnum returns the OuterEnum field if non-nil, zero value otherwise.
+
+### GetOuterEnumOk
+
+`func (o *EnumTest) GetOuterEnumOk() (OuterEnum, bool)`
+
+GetOuterEnumOk returns a tuple with the OuterEnum field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasOuterEnum
+
+`func (o *EnumTest) HasOuterEnum() bool`
+
+HasOuterEnum returns a boolean if a field has been set.
+
+### SetOuterEnum
+
+`func (o *EnumTest) SetOuterEnum(v OuterEnum)`
+
+SetOuterEnum gets a reference to the given OuterEnum and assigns it to the OuterEnum field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/File.md b/samples/client/petstore/go-experimental/go-petstore/docs/File.md
index a113b0312cdf8e850944461a2d58094323ac28ea..07d269cd8811d49ac877a991c100de905b3ca5e9 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/File.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/File.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**SourceURI** | **string** | Test capitalization | [optional] 
+**SourceURI** | Pointer to **string** | Test capitalization | [optional]
+
+## Methods
+
+### GetSourceURI
+
+`func (o *File) GetSourceURI() string`
+
+GetSourceURI returns the SourceURI field if non-nil, zero value otherwise.
+
+### GetSourceURIOk
+
+`func (o *File) GetSourceURIOk() (string, bool)`
+
+GetSourceURIOk returns a tuple with the SourceURI field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasSourceURI
+
+`func (o *File) HasSourceURI() bool`
+
+HasSourceURI returns a boolean if a field has been set.
+
+### SetSourceURI
+
+`func (o *File) SetSourceURI(v string)`
+
+SetSourceURI gets a reference to the given string and assigns it to the SourceURI field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/FileSchemaTestClass.md b/samples/client/petstore/go-experimental/go-petstore/docs/FileSchemaTestClass.md
index ae51414dd6ccf3d3304e5e44646cebfc8d5da515..4a12b7f6d570972b2cdfdb13605e38874f732cab 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/FileSchemaTestClass.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/FileSchemaTestClass.md
@@ -4,8 +4,61 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**File** | [**File**](File.md) |  | [optional] 
-**Files** | [**[]File**](File.md) |  | [optional] 
+**File** | Pointer to [**File**](File.md) |  | [optional]
+**Files** | Pointer to [**[]File**](File.md) |  | [optional]
+
+## Methods
+
+### GetFile
+
+`func (o *FileSchemaTestClass) GetFile() File`
+
+GetFile returns the File field if non-nil, zero value otherwise.
+
+### GetFileOk
+
+`func (o *FileSchemaTestClass) GetFileOk() (File, bool)`
+
+GetFileOk returns a tuple with the File field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasFile
+
+`func (o *FileSchemaTestClass) HasFile() bool`
+
+HasFile returns a boolean if a field has been set.
+
+### SetFile
+
+`func (o *FileSchemaTestClass) SetFile(v File)`
+
+SetFile gets a reference to the given File and assigns it to the File field.
+
+### GetFiles
+
+`func (o *FileSchemaTestClass) GetFiles() []File`
+
+GetFiles returns the Files field if non-nil, zero value otherwise.
+
+### GetFilesOk
+
+`func (o *FileSchemaTestClass) GetFilesOk() ([]File, bool)`
+
+GetFilesOk returns a tuple with the Files field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasFiles
+
+`func (o *FileSchemaTestClass) HasFiles() bool`
+
+HasFiles returns a boolean if a field has been set.
+
+### SetFiles
+
+`func (o *FileSchemaTestClass) SetFiles(v []File)`
+
+SetFiles gets a reference to the given []File and assigns it to the Files field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/FormatTest.md b/samples/client/petstore/go-experimental/go-petstore/docs/FormatTest.md
index ee089a03cd79bd85658d2cb99caea13cd64b5831..7b0c3d451ce80f3658c5e87fe2a607a9ce56f65c 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/FormatTest.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/FormatTest.md
@@ -4,19 +4,347 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Integer** | **int32** |  | [optional] 
-**Int32** | **int32** |  | [optional] 
-**Int64** | **int64** |  | [optional] 
-**Number** | **float32** |  | 
-**Float** | **float32** |  | [optional] 
-**Double** | **float64** |  | [optional] 
-**String** | **string** |  | [optional] 
-**Byte** | **string** |  | 
-**Binary** | [***os.File**](*os.File.md) |  | [optional] 
-**Date** | **string** |  | 
-**DateTime** | [**time.Time**](time.Time.md) |  | [optional] 
-**Uuid** | **string** |  | [optional] 
-**Password** | **string** |  | 
+**Integer** | Pointer to **int32** |  | [optional]
+**Int32** | Pointer to **int32** |  | [optional]
+**Int64** | Pointer to **int64** |  | [optional]
+**Number** | Pointer to **float32** |  | 
+**Float** | Pointer to **float32** |  | [optional]
+**Double** | Pointer to **float64** |  | [optional]
+**String** | Pointer to **string** |  | [optional]
+**Byte** | Pointer to **string** |  | 
+**Binary** | Pointer to [***os.File**](*os.File.md) |  | [optional]
+**Date** | Pointer to **string** |  | 
+**DateTime** | Pointer to [**time.Time**](time.Time.md) |  | [optional]
+**Uuid** | Pointer to **string** |  | [optional]
+**Password** | Pointer to **string** |  | 
+
+## Methods
+
+### GetInteger
+
+`func (o *FormatTest) GetInteger() int32`
+
+GetInteger returns the Integer field if non-nil, zero value otherwise.
+
+### GetIntegerOk
+
+`func (o *FormatTest) GetIntegerOk() (int32, bool)`
+
+GetIntegerOk returns a tuple with the Integer field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasInteger
+
+`func (o *FormatTest) HasInteger() bool`
+
+HasInteger returns a boolean if a field has been set.
+
+### SetInteger
+
+`func (o *FormatTest) SetInteger(v int32)`
+
+SetInteger gets a reference to the given int32 and assigns it to the Integer field.
+
+### GetInt32
+
+`func (o *FormatTest) GetInt32() int32`
+
+GetInt32 returns the Int32 field if non-nil, zero value otherwise.
+
+### GetInt32Ok
+
+`func (o *FormatTest) GetInt32Ok() (int32, bool)`
+
+GetInt32Ok returns a tuple with the Int32 field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasInt32
+
+`func (o *FormatTest) HasInt32() bool`
+
+HasInt32 returns a boolean if a field has been set.
+
+### SetInt32
+
+`func (o *FormatTest) SetInt32(v int32)`
+
+SetInt32 gets a reference to the given int32 and assigns it to the Int32 field.
+
+### GetInt64
+
+`func (o *FormatTest) GetInt64() int64`
+
+GetInt64 returns the Int64 field if non-nil, zero value otherwise.
+
+### GetInt64Ok
+
+`func (o *FormatTest) GetInt64Ok() (int64, bool)`
+
+GetInt64Ok returns a tuple with the Int64 field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasInt64
+
+`func (o *FormatTest) HasInt64() bool`
+
+HasInt64 returns a boolean if a field has been set.
+
+### SetInt64
+
+`func (o *FormatTest) SetInt64(v int64)`
+
+SetInt64 gets a reference to the given int64 and assigns it to the Int64 field.
+
+### GetNumber
+
+`func (o *FormatTest) GetNumber() float32`
+
+GetNumber returns the Number field if non-nil, zero value otherwise.
+
+### GetNumberOk
+
+`func (o *FormatTest) GetNumberOk() (float32, bool)`
+
+GetNumberOk returns a tuple with the Number field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNumber
+
+`func (o *FormatTest) HasNumber() bool`
+
+HasNumber returns a boolean if a field has been set.
+
+### SetNumber
+
+`func (o *FormatTest) SetNumber(v float32)`
+
+SetNumber gets a reference to the given float32 and assigns it to the Number field.
+
+### GetFloat
+
+`func (o *FormatTest) GetFloat() float32`
+
+GetFloat returns the Float field if non-nil, zero value otherwise.
+
+### GetFloatOk
+
+`func (o *FormatTest) GetFloatOk() (float32, bool)`
+
+GetFloatOk returns a tuple with the Float field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasFloat
+
+`func (o *FormatTest) HasFloat() bool`
+
+HasFloat returns a boolean if a field has been set.
+
+### SetFloat
+
+`func (o *FormatTest) SetFloat(v float32)`
+
+SetFloat gets a reference to the given float32 and assigns it to the Float field.
+
+### GetDouble
+
+`func (o *FormatTest) GetDouble() float64`
+
+GetDouble returns the Double field if non-nil, zero value otherwise.
+
+### GetDoubleOk
+
+`func (o *FormatTest) GetDoubleOk() (float64, bool)`
+
+GetDoubleOk returns a tuple with the Double field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasDouble
+
+`func (o *FormatTest) HasDouble() bool`
+
+HasDouble returns a boolean if a field has been set.
+
+### SetDouble
+
+`func (o *FormatTest) SetDouble(v float64)`
+
+SetDouble gets a reference to the given float64 and assigns it to the Double field.
+
+### GetString
+
+`func (o *FormatTest) GetString() string`
+
+GetString returns the String field if non-nil, zero value otherwise.
+
+### GetStringOk
+
+`func (o *FormatTest) GetStringOk() (string, bool)`
+
+GetStringOk returns a tuple with the String field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasString
+
+`func (o *FormatTest) HasString() bool`
+
+HasString returns a boolean if a field has been set.
+
+### SetString
+
+`func (o *FormatTest) SetString(v string)`
+
+SetString gets a reference to the given string and assigns it to the String field.
+
+### GetByte
+
+`func (o *FormatTest) GetByte() string`
+
+GetByte returns the Byte field if non-nil, zero value otherwise.
+
+### GetByteOk
+
+`func (o *FormatTest) GetByteOk() (string, bool)`
+
+GetByteOk returns a tuple with the Byte field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasByte
+
+`func (o *FormatTest) HasByte() bool`
+
+HasByte returns a boolean if a field has been set.
+
+### SetByte
+
+`func (o *FormatTest) SetByte(v string)`
+
+SetByte gets a reference to the given string and assigns it to the Byte field.
+
+### GetBinary
+
+`func (o *FormatTest) GetBinary() *os.File`
+
+GetBinary returns the Binary field if non-nil, zero value otherwise.
+
+### GetBinaryOk
+
+`func (o *FormatTest) GetBinaryOk() (*os.File, bool)`
+
+GetBinaryOk returns a tuple with the Binary field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasBinary
+
+`func (o *FormatTest) HasBinary() bool`
+
+HasBinary returns a boolean if a field has been set.
+
+### SetBinary
+
+`func (o *FormatTest) SetBinary(v *os.File)`
+
+SetBinary gets a reference to the given *os.File and assigns it to the Binary field.
+
+### GetDate
+
+`func (o *FormatTest) GetDate() string`
+
+GetDate returns the Date field if non-nil, zero value otherwise.
+
+### GetDateOk
+
+`func (o *FormatTest) GetDateOk() (string, bool)`
+
+GetDateOk returns a tuple with the Date field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasDate
+
+`func (o *FormatTest) HasDate() bool`
+
+HasDate returns a boolean if a field has been set.
+
+### SetDate
+
+`func (o *FormatTest) SetDate(v string)`
+
+SetDate gets a reference to the given string and assigns it to the Date field.
+
+### GetDateTime
+
+`func (o *FormatTest) GetDateTime() time.Time`
+
+GetDateTime returns the DateTime field if non-nil, zero value otherwise.
+
+### GetDateTimeOk
+
+`func (o *FormatTest) GetDateTimeOk() (time.Time, bool)`
+
+GetDateTimeOk returns a tuple with the DateTime field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasDateTime
+
+`func (o *FormatTest) HasDateTime() bool`
+
+HasDateTime returns a boolean if a field has been set.
+
+### SetDateTime
+
+`func (o *FormatTest) SetDateTime(v time.Time)`
+
+SetDateTime gets a reference to the given time.Time and assigns it to the DateTime field.
+
+### GetUuid
+
+`func (o *FormatTest) GetUuid() string`
+
+GetUuid returns the Uuid field if non-nil, zero value otherwise.
+
+### GetUuidOk
+
+`func (o *FormatTest) GetUuidOk() (string, bool)`
+
+GetUuidOk returns a tuple with the Uuid field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasUuid
+
+`func (o *FormatTest) HasUuid() bool`
+
+HasUuid returns a boolean if a field has been set.
+
+### SetUuid
+
+`func (o *FormatTest) SetUuid(v string)`
+
+SetUuid gets a reference to the given string and assigns it to the Uuid field.
+
+### GetPassword
+
+`func (o *FormatTest) GetPassword() string`
+
+GetPassword returns the Password field if non-nil, zero value otherwise.
+
+### GetPasswordOk
+
+`func (o *FormatTest) GetPasswordOk() (string, bool)`
+
+GetPasswordOk returns a tuple with the Password field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPassword
+
+`func (o *FormatTest) HasPassword() bool`
+
+HasPassword returns a boolean if a field has been set.
+
+### SetPassword
+
+`func (o *FormatTest) SetPassword(v string)`
+
+SetPassword gets a reference to the given string and assigns it to the Password field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/HasOnlyReadOnly.md b/samples/client/petstore/go-experimental/go-petstore/docs/HasOnlyReadOnly.md
index 9e2f49573597f76fc6d1d7bd655ff3407486f589..33cc010f3a2c7d245381ac65b5643f0869770597 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/HasOnlyReadOnly.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/HasOnlyReadOnly.md
@@ -4,8 +4,61 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Bar** | **string** |  | [optional] 
-**Foo** | **string** |  | [optional] 
+**Bar** | Pointer to **string** |  | [optional]
+**Foo** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetBar
+
+`func (o *HasOnlyReadOnly) GetBar() string`
+
+GetBar returns the Bar field if non-nil, zero value otherwise.
+
+### GetBarOk
+
+`func (o *HasOnlyReadOnly) GetBarOk() (string, bool)`
+
+GetBarOk returns a tuple with the Bar field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasBar
+
+`func (o *HasOnlyReadOnly) HasBar() bool`
+
+HasBar returns a boolean if a field has been set.
+
+### SetBar
+
+`func (o *HasOnlyReadOnly) SetBar(v string)`
+
+SetBar gets a reference to the given string and assigns it to the Bar field.
+
+### GetFoo
+
+`func (o *HasOnlyReadOnly) GetFoo() string`
+
+GetFoo returns the Foo field if non-nil, zero value otherwise.
+
+### GetFooOk
+
+`func (o *HasOnlyReadOnly) GetFooOk() (string, bool)`
+
+GetFooOk returns a tuple with the Foo field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasFoo
+
+`func (o *HasOnlyReadOnly) HasFoo() bool`
+
+HasFoo returns a boolean if a field has been set.
+
+### SetFoo
+
+`func (o *HasOnlyReadOnly) SetFoo(v string)`
+
+SetFoo gets a reference to the given string and assigns it to the Foo field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/List.md b/samples/client/petstore/go-experimental/go-petstore/docs/List.md
index bba2e5299066c7e877ad96cbd8b59c7dd89c5494..53784dd47a95b125c2a7726f7f7a652c54e86a0f 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/List.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/List.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Var123List** | **string** |  | [optional] 
+**Var123List** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetVar123List
+
+`func (o *List) GetVar123List() string`
+
+GetVar123List returns the Var123List field if non-nil, zero value otherwise.
+
+### GetVar123ListOk
+
+`func (o *List) GetVar123ListOk() (string, bool)`
+
+GetVar123ListOk returns a tuple with the Var123List field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasVar123List
+
+`func (o *List) HasVar123List() bool`
+
+HasVar123List returns a boolean if a field has been set.
+
+### SetVar123List
+
+`func (o *List) SetVar123List(v string)`
+
+SetVar123List gets a reference to the given string and assigns it to the Var123List field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/MapTest.md b/samples/client/petstore/go-experimental/go-petstore/docs/MapTest.md
index 6645e044658d08783c7483d7fb84a368c3474fbb..6994b17ec5b789be91d7420a4c3ebb6768ccfde5 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/MapTest.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/MapTest.md
@@ -4,10 +4,113 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**MapMapOfString** | [**map[string]map[string]string**](map.md) |  | [optional] 
-**MapOfEnumString** | **map[string]string** |  | [optional] 
-**DirectMap** | **map[string]bool** |  | [optional] 
-**IndirectMap** | **map[string]bool** |  | [optional] 
+**MapMapOfString** | Pointer to [**map[string]map[string]string**](map.md) |  | [optional]
+**MapOfEnumString** | Pointer to **map[string]string** |  | [optional]
+**DirectMap** | Pointer to **map[string]bool** |  | [optional]
+**IndirectMap** | Pointer to **map[string]bool** |  | [optional]
+
+## Methods
+
+### GetMapMapOfString
+
+`func (o *MapTest) GetMapMapOfString() map[string]map[string]string`
+
+GetMapMapOfString returns the MapMapOfString field if non-nil, zero value otherwise.
+
+### GetMapMapOfStringOk
+
+`func (o *MapTest) GetMapMapOfStringOk() (map[string]map[string]string, bool)`
+
+GetMapMapOfStringOk returns a tuple with the MapMapOfString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapMapOfString
+
+`func (o *MapTest) HasMapMapOfString() bool`
+
+HasMapMapOfString returns a boolean if a field has been set.
+
+### SetMapMapOfString
+
+`func (o *MapTest) SetMapMapOfString(v map[string]map[string]string)`
+
+SetMapMapOfString gets a reference to the given map[string]map[string]string and assigns it to the MapMapOfString field.
+
+### GetMapOfEnumString
+
+`func (o *MapTest) GetMapOfEnumString() map[string]string`
+
+GetMapOfEnumString returns the MapOfEnumString field if non-nil, zero value otherwise.
+
+### GetMapOfEnumStringOk
+
+`func (o *MapTest) GetMapOfEnumStringOk() (map[string]string, bool)`
+
+GetMapOfEnumStringOk returns a tuple with the MapOfEnumString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMapOfEnumString
+
+`func (o *MapTest) HasMapOfEnumString() bool`
+
+HasMapOfEnumString returns a boolean if a field has been set.
+
+### SetMapOfEnumString
+
+`func (o *MapTest) SetMapOfEnumString(v map[string]string)`
+
+SetMapOfEnumString gets a reference to the given map[string]string and assigns it to the MapOfEnumString field.
+
+### GetDirectMap
+
+`func (o *MapTest) GetDirectMap() map[string]bool`
+
+GetDirectMap returns the DirectMap field if non-nil, zero value otherwise.
+
+### GetDirectMapOk
+
+`func (o *MapTest) GetDirectMapOk() (map[string]bool, bool)`
+
+GetDirectMapOk returns a tuple with the DirectMap field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasDirectMap
+
+`func (o *MapTest) HasDirectMap() bool`
+
+HasDirectMap returns a boolean if a field has been set.
+
+### SetDirectMap
+
+`func (o *MapTest) SetDirectMap(v map[string]bool)`
+
+SetDirectMap gets a reference to the given map[string]bool and assigns it to the DirectMap field.
+
+### GetIndirectMap
+
+`func (o *MapTest) GetIndirectMap() map[string]bool`
+
+GetIndirectMap returns the IndirectMap field if non-nil, zero value otherwise.
+
+### GetIndirectMapOk
+
+`func (o *MapTest) GetIndirectMapOk() (map[string]bool, bool)`
+
+GetIndirectMapOk returns a tuple with the IndirectMap field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasIndirectMap
+
+`func (o *MapTest) HasIndirectMap() bool`
+
+HasIndirectMap returns a boolean if a field has been set.
+
+### SetIndirectMap
+
+`func (o *MapTest) SetIndirectMap(v map[string]bool)`
+
+SetIndirectMap gets a reference to the given map[string]bool and assigns it to the IndirectMap field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/go-experimental/go-petstore/docs/MixedPropertiesAndAdditionalPropertiesClass.md
index a2ce1068b279f6dab04fbfeb83ee988442b66f76..f12ed969afdbdafe8ea21c18f98e0681bd83eef3 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/MixedPropertiesAndAdditionalPropertiesClass.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -4,9 +4,87 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Uuid** | **string** |  | [optional] 
-**DateTime** | [**time.Time**](time.Time.md) |  | [optional] 
-**Map** | [**map[string]Animal**](Animal.md) |  | [optional] 
+**Uuid** | Pointer to **string** |  | [optional]
+**DateTime** | Pointer to [**time.Time**](time.Time.md) |  | [optional]
+**Map** | Pointer to [**map[string]Animal**](Animal.md) |  | [optional]
+
+## Methods
+
+### GetUuid
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) GetUuid() string`
+
+GetUuid returns the Uuid field if non-nil, zero value otherwise.
+
+### GetUuidOk
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) GetUuidOk() (string, bool)`
+
+GetUuidOk returns a tuple with the Uuid field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasUuid
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) HasUuid() bool`
+
+HasUuid returns a boolean if a field has been set.
+
+### SetUuid
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) SetUuid(v string)`
+
+SetUuid gets a reference to the given string and assigns it to the Uuid field.
+
+### GetDateTime
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) GetDateTime() time.Time`
+
+GetDateTime returns the DateTime field if non-nil, zero value otherwise.
+
+### GetDateTimeOk
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) GetDateTimeOk() (time.Time, bool)`
+
+GetDateTimeOk returns a tuple with the DateTime field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasDateTime
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) HasDateTime() bool`
+
+HasDateTime returns a boolean if a field has been set.
+
+### SetDateTime
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) SetDateTime(v time.Time)`
+
+SetDateTime gets a reference to the given time.Time and assigns it to the DateTime field.
+
+### GetMap
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) GetMap() map[string]Animal`
+
+GetMap returns the Map field if non-nil, zero value otherwise.
+
+### GetMapOk
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) GetMapOk() (map[string]Animal, bool)`
+
+GetMapOk returns a tuple with the Map field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMap
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) HasMap() bool`
+
+HasMap returns a boolean if a field has been set.
+
+### SetMap
+
+`func (o *MixedPropertiesAndAdditionalPropertiesClass) SetMap(v map[string]Animal)`
+
+SetMap gets a reference to the given map[string]Animal and assigns it to the Map field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Model200Response.md b/samples/client/petstore/go-experimental/go-petstore/docs/Model200Response.md
index 27b93bd1549f0215431dde382cb63eecdaddf09d..b0fbf5369ef30b19d2baf88abcfd96ced5186855 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Model200Response.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Model200Response.md
@@ -4,8 +4,61 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Name** | **int32** |  | [optional] 
-**Class** | **string** |  | [optional] 
+**Name** | Pointer to **int32** |  | [optional]
+**Class** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetName
+
+`func (o *Model200Response) GetName() int32`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *Model200Response) GetNameOk() (int32, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *Model200Response) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *Model200Response) SetName(v int32)`
+
+SetName gets a reference to the given int32 and assigns it to the Name field.
+
+### GetClass
+
+`func (o *Model200Response) GetClass() string`
+
+GetClass returns the Class field if non-nil, zero value otherwise.
+
+### GetClassOk
+
+`func (o *Model200Response) GetClassOk() (string, bool)`
+
+GetClassOk returns a tuple with the Class field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasClass
+
+`func (o *Model200Response) HasClass() bool`
+
+HasClass returns a boolean if a field has been set.
+
+### SetClass
+
+`func (o *Model200Response) SetClass(v string)`
+
+SetClass gets a reference to the given string and assigns it to the Class field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Name.md b/samples/client/petstore/go-experimental/go-petstore/docs/Name.md
index 453e54d985168ffaad36c6302d19737301b004b6..3b1d29f5185832dc50503a53626ac603b37f87b2 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Name.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Name.md
@@ -4,10 +4,113 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Name** | **int32** |  | 
-**SnakeCase** | **int32** |  | [optional] 
-**Property** | **string** |  | [optional] 
-**Var123Number** | **int32** |  | [optional] 
+**Name** | Pointer to **int32** |  | 
+**SnakeCase** | Pointer to **int32** |  | [optional]
+**Property** | Pointer to **string** |  | [optional]
+**Var123Number** | Pointer to **int32** |  | [optional]
+
+## Methods
+
+### GetName
+
+`func (o *Name) GetName() int32`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *Name) GetNameOk() (int32, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *Name) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *Name) SetName(v int32)`
+
+SetName gets a reference to the given int32 and assigns it to the Name field.
+
+### GetSnakeCase
+
+`func (o *Name) GetSnakeCase() int32`
+
+GetSnakeCase returns the SnakeCase field if non-nil, zero value otherwise.
+
+### GetSnakeCaseOk
+
+`func (o *Name) GetSnakeCaseOk() (int32, bool)`
+
+GetSnakeCaseOk returns a tuple with the SnakeCase field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasSnakeCase
+
+`func (o *Name) HasSnakeCase() bool`
+
+HasSnakeCase returns a boolean if a field has been set.
+
+### SetSnakeCase
+
+`func (o *Name) SetSnakeCase(v int32)`
+
+SetSnakeCase gets a reference to the given int32 and assigns it to the SnakeCase field.
+
+### GetProperty
+
+`func (o *Name) GetProperty() string`
+
+GetProperty returns the Property field if non-nil, zero value otherwise.
+
+### GetPropertyOk
+
+`func (o *Name) GetPropertyOk() (string, bool)`
+
+GetPropertyOk returns a tuple with the Property field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasProperty
+
+`func (o *Name) HasProperty() bool`
+
+HasProperty returns a boolean if a field has been set.
+
+### SetProperty
+
+`func (o *Name) SetProperty(v string)`
+
+SetProperty gets a reference to the given string and assigns it to the Property field.
+
+### GetVar123Number
+
+`func (o *Name) GetVar123Number() int32`
+
+GetVar123Number returns the Var123Number field if non-nil, zero value otherwise.
+
+### GetVar123NumberOk
+
+`func (o *Name) GetVar123NumberOk() (int32, bool)`
+
+GetVar123NumberOk returns a tuple with the Var123Number field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasVar123Number
+
+`func (o *Name) HasVar123Number() bool`
+
+HasVar123Number returns a boolean if a field has been set.
+
+### SetVar123Number
+
+`func (o *Name) SetVar123Number(v int32)`
+
+SetVar123Number gets a reference to the given int32 and assigns it to the Var123Number field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/NumberOnly.md b/samples/client/petstore/go-experimental/go-petstore/docs/NumberOnly.md
index 604cf37eeded750ce41a4323575e30d75ddd47cf..3521b8b2d08980160a41a2b0d90bb7a385edbf09 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/NumberOnly.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/NumberOnly.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**JustNumber** | **float32** |  | [optional] 
+**JustNumber** | Pointer to **float32** |  | [optional]
+
+## Methods
+
+### GetJustNumber
+
+`func (o *NumberOnly) GetJustNumber() float32`
+
+GetJustNumber returns the JustNumber field if non-nil, zero value otherwise.
+
+### GetJustNumberOk
+
+`func (o *NumberOnly) GetJustNumberOk() (float32, bool)`
+
+GetJustNumberOk returns a tuple with the JustNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasJustNumber
+
+`func (o *NumberOnly) HasJustNumber() bool`
+
+HasJustNumber returns a boolean if a field has been set.
+
+### SetJustNumber
+
+`func (o *NumberOnly) SetJustNumber(v float32)`
+
+SetJustNumber gets a reference to the given float32 and assigns it to the JustNumber field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Order.md b/samples/client/petstore/go-experimental/go-petstore/docs/Order.md
index eeef0971005ec0273874e74564c3c3788197d3b3..982f9f591c970580eac583b56af93af93ec0b016 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Order.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Order.md
@@ -4,12 +4,165 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Id** | **int64** |  | [optional] 
-**PetId** | **int64** |  | [optional] 
-**Quantity** | **int32** |  | [optional] 
-**ShipDate** | [**time.Time**](time.Time.md) |  | [optional] 
-**Status** | **string** | Order Status | [optional] 
-**Complete** | **bool** |  | [optional] [default to false]
+**Id** | Pointer to **int64** |  | [optional]
+**PetId** | Pointer to **int64** |  | [optional]
+**Quantity** | Pointer to **int32** |  | [optional]
+**ShipDate** | Pointer to [**time.Time**](time.Time.md) |  | [optional]
+**Status** | Pointer to **string** | Order Status | [optional]
+**Complete** | Pointer to **bool** |  | [optional] [default to false]
+
+## Methods
+
+### GetId
+
+`func (o *Order) GetId() int64`
+
+GetId returns the Id field if non-nil, zero value otherwise.
+
+### GetIdOk
+
+`func (o *Order) GetIdOk() (int64, bool)`
+
+GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasId
+
+`func (o *Order) HasId() bool`
+
+HasId returns a boolean if a field has been set.
+
+### SetId
+
+`func (o *Order) SetId(v int64)`
+
+SetId gets a reference to the given int64 and assigns it to the Id field.
+
+### GetPetId
+
+`func (o *Order) GetPetId() int64`
+
+GetPetId returns the PetId field if non-nil, zero value otherwise.
+
+### GetPetIdOk
+
+`func (o *Order) GetPetIdOk() (int64, bool)`
+
+GetPetIdOk returns a tuple with the PetId field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPetId
+
+`func (o *Order) HasPetId() bool`
+
+HasPetId returns a boolean if a field has been set.
+
+### SetPetId
+
+`func (o *Order) SetPetId(v int64)`
+
+SetPetId gets a reference to the given int64 and assigns it to the PetId field.
+
+### GetQuantity
+
+`func (o *Order) GetQuantity() int32`
+
+GetQuantity returns the Quantity field if non-nil, zero value otherwise.
+
+### GetQuantityOk
+
+`func (o *Order) GetQuantityOk() (int32, bool)`
+
+GetQuantityOk returns a tuple with the Quantity field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasQuantity
+
+`func (o *Order) HasQuantity() bool`
+
+HasQuantity returns a boolean if a field has been set.
+
+### SetQuantity
+
+`func (o *Order) SetQuantity(v int32)`
+
+SetQuantity gets a reference to the given int32 and assigns it to the Quantity field.
+
+### GetShipDate
+
+`func (o *Order) GetShipDate() time.Time`
+
+GetShipDate returns the ShipDate field if non-nil, zero value otherwise.
+
+### GetShipDateOk
+
+`func (o *Order) GetShipDateOk() (time.Time, bool)`
+
+GetShipDateOk returns a tuple with the ShipDate field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasShipDate
+
+`func (o *Order) HasShipDate() bool`
+
+HasShipDate returns a boolean if a field has been set.
+
+### SetShipDate
+
+`func (o *Order) SetShipDate(v time.Time)`
+
+SetShipDate gets a reference to the given time.Time and assigns it to the ShipDate field.
+
+### GetStatus
+
+`func (o *Order) GetStatus() string`
+
+GetStatus returns the Status field if non-nil, zero value otherwise.
+
+### GetStatusOk
+
+`func (o *Order) GetStatusOk() (string, bool)`
+
+GetStatusOk returns a tuple with the Status field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasStatus
+
+`func (o *Order) HasStatus() bool`
+
+HasStatus returns a boolean if a field has been set.
+
+### SetStatus
+
+`func (o *Order) SetStatus(v string)`
+
+SetStatus gets a reference to the given string and assigns it to the Status field.
+
+### GetComplete
+
+`func (o *Order) GetComplete() bool`
+
+GetComplete returns the Complete field if non-nil, zero value otherwise.
+
+### GetCompleteOk
+
+`func (o *Order) GetCompleteOk() (bool, bool)`
+
+GetCompleteOk returns a tuple with the Complete field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasComplete
+
+`func (o *Order) HasComplete() bool`
+
+HasComplete returns a boolean if a field has been set.
+
+### SetComplete
+
+`func (o *Order) SetComplete(v bool)`
+
+SetComplete gets a reference to the given bool and assigns it to the Complete field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/OuterComposite.md b/samples/client/petstore/go-experimental/go-petstore/docs/OuterComposite.md
index df9bce1bd9041185fe531faf304bce0bc2eaa518..30a345dc8d1cf7991d82b6b52d47228e21ceda5e 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/OuterComposite.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/OuterComposite.md
@@ -4,9 +4,87 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**MyNumber** | **float32** |  | [optional] 
-**MyString** | **string** |  | [optional] 
-**MyBoolean** | **bool** |  | [optional] 
+**MyNumber** | Pointer to **float32** |  | [optional]
+**MyString** | Pointer to **string** |  | [optional]
+**MyBoolean** | Pointer to **bool** |  | [optional]
+
+## Methods
+
+### GetMyNumber
+
+`func (o *OuterComposite) GetMyNumber() float32`
+
+GetMyNumber returns the MyNumber field if non-nil, zero value otherwise.
+
+### GetMyNumberOk
+
+`func (o *OuterComposite) GetMyNumberOk() (float32, bool)`
+
+GetMyNumberOk returns a tuple with the MyNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMyNumber
+
+`func (o *OuterComposite) HasMyNumber() bool`
+
+HasMyNumber returns a boolean if a field has been set.
+
+### SetMyNumber
+
+`func (o *OuterComposite) SetMyNumber(v float32)`
+
+SetMyNumber gets a reference to the given float32 and assigns it to the MyNumber field.
+
+### GetMyString
+
+`func (o *OuterComposite) GetMyString() string`
+
+GetMyString returns the MyString field if non-nil, zero value otherwise.
+
+### GetMyStringOk
+
+`func (o *OuterComposite) GetMyStringOk() (string, bool)`
+
+GetMyStringOk returns a tuple with the MyString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMyString
+
+`func (o *OuterComposite) HasMyString() bool`
+
+HasMyString returns a boolean if a field has been set.
+
+### SetMyString
+
+`func (o *OuterComposite) SetMyString(v string)`
+
+SetMyString gets a reference to the given string and assigns it to the MyString field.
+
+### GetMyBoolean
+
+`func (o *OuterComposite) GetMyBoolean() bool`
+
+GetMyBoolean returns the MyBoolean field if non-nil, zero value otherwise.
+
+### GetMyBooleanOk
+
+`func (o *OuterComposite) GetMyBooleanOk() (bool, bool)`
+
+GetMyBooleanOk returns a tuple with the MyBoolean field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasMyBoolean
+
+`func (o *OuterComposite) HasMyBoolean() bool`
+
+HasMyBoolean returns a boolean if a field has been set.
+
+### SetMyBoolean
+
+`func (o *OuterComposite) SetMyBoolean(v bool)`
+
+SetMyBoolean gets a reference to the given bool and assigns it to the MyBoolean field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/OuterEnum.md b/samples/client/petstore/go-experimental/go-petstore/docs/OuterEnum.md
index c97466159c5671df24e509c6313c9123014d746b..13bed2d17fd833a6cdd1321b58337bcd6338b253 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/OuterEnum.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/OuterEnum.md
@@ -5,6 +5,7 @@
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
 
+
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Pet.md b/samples/client/petstore/go-experimental/go-petstore/docs/Pet.md
index c48104c63971395ee3953d298c6d70d6f1e66bb2..81a4ec294e72f9018c7053678cb0829a7996def5 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Pet.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Pet.md
@@ -4,12 +4,165 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Id** | **int64** |  | [optional] 
-**Category** | [**Category**](Category.md) |  | [optional] 
-**Name** | **string** |  | 
-**PhotoUrls** | **[]string** |  | 
-**Tags** | [**[]Tag**](Tag.md) |  | [optional] 
-**Status** | **string** | pet status in the store | [optional] 
+**Id** | Pointer to **int64** |  | [optional]
+**Category** | Pointer to [**Category**](Category.md) |  | [optional]
+**Name** | Pointer to **string** |  | 
+**PhotoUrls** | Pointer to **[]string** |  | 
+**Tags** | Pointer to [**[]Tag**](Tag.md) |  | [optional]
+**Status** | Pointer to **string** | pet status in the store | [optional]
+
+## Methods
+
+### GetId
+
+`func (o *Pet) GetId() int64`
+
+GetId returns the Id field if non-nil, zero value otherwise.
+
+### GetIdOk
+
+`func (o *Pet) GetIdOk() (int64, bool)`
+
+GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasId
+
+`func (o *Pet) HasId() bool`
+
+HasId returns a boolean if a field has been set.
+
+### SetId
+
+`func (o *Pet) SetId(v int64)`
+
+SetId gets a reference to the given int64 and assigns it to the Id field.
+
+### GetCategory
+
+`func (o *Pet) GetCategory() Category`
+
+GetCategory returns the Category field if non-nil, zero value otherwise.
+
+### GetCategoryOk
+
+`func (o *Pet) GetCategoryOk() (Category, bool)`
+
+GetCategoryOk returns a tuple with the Category field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasCategory
+
+`func (o *Pet) HasCategory() bool`
+
+HasCategory returns a boolean if a field has been set.
+
+### SetCategory
+
+`func (o *Pet) SetCategory(v Category)`
+
+SetCategory gets a reference to the given Category and assigns it to the Category field.
+
+### GetName
+
+`func (o *Pet) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *Pet) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *Pet) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *Pet) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
+### GetPhotoUrls
+
+`func (o *Pet) GetPhotoUrls() []string`
+
+GetPhotoUrls returns the PhotoUrls field if non-nil, zero value otherwise.
+
+### GetPhotoUrlsOk
+
+`func (o *Pet) GetPhotoUrlsOk() ([]string, bool)`
+
+GetPhotoUrlsOk returns a tuple with the PhotoUrls field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPhotoUrls
+
+`func (o *Pet) HasPhotoUrls() bool`
+
+HasPhotoUrls returns a boolean if a field has been set.
+
+### SetPhotoUrls
+
+`func (o *Pet) SetPhotoUrls(v []string)`
+
+SetPhotoUrls gets a reference to the given []string and assigns it to the PhotoUrls field.
+
+### GetTags
+
+`func (o *Pet) GetTags() []Tag`
+
+GetTags returns the Tags field if non-nil, zero value otherwise.
+
+### GetTagsOk
+
+`func (o *Pet) GetTagsOk() ([]Tag, bool)`
+
+GetTagsOk returns a tuple with the Tags field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasTags
+
+`func (o *Pet) HasTags() bool`
+
+HasTags returns a boolean if a field has been set.
+
+### SetTags
+
+`func (o *Pet) SetTags(v []Tag)`
+
+SetTags gets a reference to the given []Tag and assigns it to the Tags field.
+
+### GetStatus
+
+`func (o *Pet) GetStatus() string`
+
+GetStatus returns the Status field if non-nil, zero value otherwise.
+
+### GetStatusOk
+
+`func (o *Pet) GetStatusOk() (string, bool)`
+
+GetStatusOk returns a tuple with the Status field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasStatus
+
+`func (o *Pet) HasStatus() bool`
+
+HasStatus returns a boolean if a field has been set.
+
+### SetStatus
+
+`func (o *Pet) SetStatus(v string)`
+
+SetStatus gets a reference to the given string and assigns it to the Status field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/ReadOnlyFirst.md b/samples/client/petstore/go-experimental/go-petstore/docs/ReadOnlyFirst.md
index 3fee799f2951f4a44b576708629da7c4909a28d5..e490a0fc96c08203a6a9485e3487329694e2ac0d 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/ReadOnlyFirst.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/ReadOnlyFirst.md
@@ -4,8 +4,61 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Bar** | **string** |  | [optional] 
-**Baz** | **string** |  | [optional] 
+**Bar** | Pointer to **string** |  | [optional]
+**Baz** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetBar
+
+`func (o *ReadOnlyFirst) GetBar() string`
+
+GetBar returns the Bar field if non-nil, zero value otherwise.
+
+### GetBarOk
+
+`func (o *ReadOnlyFirst) GetBarOk() (string, bool)`
+
+GetBarOk returns a tuple with the Bar field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasBar
+
+`func (o *ReadOnlyFirst) HasBar() bool`
+
+HasBar returns a boolean if a field has been set.
+
+### SetBar
+
+`func (o *ReadOnlyFirst) SetBar(v string)`
+
+SetBar gets a reference to the given string and assigns it to the Bar field.
+
+### GetBaz
+
+`func (o *ReadOnlyFirst) GetBaz() string`
+
+GetBaz returns the Baz field if non-nil, zero value otherwise.
+
+### GetBazOk
+
+`func (o *ReadOnlyFirst) GetBazOk() (string, bool)`
+
+GetBazOk returns a tuple with the Baz field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasBaz
+
+`func (o *ReadOnlyFirst) HasBaz() bool`
+
+HasBaz returns a boolean if a field has been set.
+
+### SetBaz
+
+`func (o *ReadOnlyFirst) SetBaz(v string)`
+
+SetBaz gets a reference to the given string and assigns it to the Baz field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Return.md b/samples/client/petstore/go-experimental/go-petstore/docs/Return.md
index 11be0b27c5030611b9222994f74258f43054e25f..5c586fcbc6c5614257116c8cd4bb2df6c323907b 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Return.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Return.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Return** | **int32** |  | [optional] 
+**Return** | Pointer to **int32** |  | [optional]
+
+## Methods
+
+### GetReturn
+
+`func (o *Return) GetReturn() int32`
+
+GetReturn returns the Return field if non-nil, zero value otherwise.
+
+### GetReturnOk
+
+`func (o *Return) GetReturnOk() (int32, bool)`
+
+GetReturnOk returns a tuple with the Return field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasReturn
+
+`func (o *Return) HasReturn() bool`
+
+HasReturn returns a boolean if a field has been set.
+
+### SetReturn
+
+`func (o *Return) SetReturn(v int32)`
+
+SetReturn gets a reference to the given int32 and assigns it to the Return field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/SpecialModelName.md b/samples/client/petstore/go-experimental/go-petstore/docs/SpecialModelName.md
index 96d7a28a409ade4cb30df2bddce585676fd08d04..9e7d3f377def460f62601eea4b5c0e94adacc197 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/SpecialModelName.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/SpecialModelName.md
@@ -4,7 +4,35 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**SpecialPropertyName** | **int64** |  | [optional] 
+**SpecialPropertyName** | Pointer to **int64** |  | [optional]
+
+## Methods
+
+### GetSpecialPropertyName
+
+`func (o *SpecialModelName) GetSpecialPropertyName() int64`
+
+GetSpecialPropertyName returns the SpecialPropertyName field if non-nil, zero value otherwise.
+
+### GetSpecialPropertyNameOk
+
+`func (o *SpecialModelName) GetSpecialPropertyNameOk() (int64, bool)`
+
+GetSpecialPropertyNameOk returns a tuple with the SpecialPropertyName field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasSpecialPropertyName
+
+`func (o *SpecialModelName) HasSpecialPropertyName() bool`
+
+HasSpecialPropertyName returns a boolean if a field has been set.
+
+### SetSpecialPropertyName
+
+`func (o *SpecialModelName) SetSpecialPropertyName(v int64)`
+
+SetSpecialPropertyName gets a reference to the given int64 and assigns it to the SpecialPropertyName field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/Tag.md b/samples/client/petstore/go-experimental/go-petstore/docs/Tag.md
index d6b3cc117b5219eb797e4a27b199fde9ddaa852d..570126bd5f4b511e374c7074d1a39c1a1276ff9a 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/Tag.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/Tag.md
@@ -4,8 +4,61 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Id** | **int64** |  | [optional] 
-**Name** | **string** |  | [optional] 
+**Id** | Pointer to **int64** |  | [optional]
+**Name** | Pointer to **string** |  | [optional]
+
+## Methods
+
+### GetId
+
+`func (o *Tag) GetId() int64`
+
+GetId returns the Id field if non-nil, zero value otherwise.
+
+### GetIdOk
+
+`func (o *Tag) GetIdOk() (int64, bool)`
+
+GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasId
+
+`func (o *Tag) HasId() bool`
+
+HasId returns a boolean if a field has been set.
+
+### SetId
+
+`func (o *Tag) SetId(v int64)`
+
+SetId gets a reference to the given int64 and assigns it to the Id field.
+
+### GetName
+
+`func (o *Tag) GetName() string`
+
+GetName returns the Name field if non-nil, zero value otherwise.
+
+### GetNameOk
+
+`func (o *Tag) GetNameOk() (string, bool)`
+
+GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasName
+
+`func (o *Tag) HasName() bool`
+
+HasName returns a boolean if a field has been set.
+
+### SetName
+
+`func (o *Tag) SetName(v string)`
+
+SetName gets a reference to the given string and assigns it to the Name field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderDefault.md b/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderDefault.md
index 1b9f077c303bed7f5c4b95c69eaa280e1eb73f0c..09347e6175766b51cc4a30e24c08035b0b3314ba 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderDefault.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderDefault.md
@@ -4,11 +4,139 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**StringItem** | **string** |  | [default to what]
-**NumberItem** | **float32** |  | 
-**IntegerItem** | **int32** |  | 
-**BoolItem** | **bool** |  | [default to true]
-**ArrayItem** | **[]int32** |  | 
+**StringItem** | Pointer to **string** |  |  [default to what]
+**NumberItem** | Pointer to **float32** |  | 
+**IntegerItem** | Pointer to **int32** |  | 
+**BoolItem** | Pointer to **bool** |  |  [default to true]
+**ArrayItem** | Pointer to **[]int32** |  | 
+
+## Methods
+
+### GetStringItem
+
+`func (o *TypeHolderDefault) GetStringItem() string`
+
+GetStringItem returns the StringItem field if non-nil, zero value otherwise.
+
+### GetStringItemOk
+
+`func (o *TypeHolderDefault) GetStringItemOk() (string, bool)`
+
+GetStringItemOk returns a tuple with the StringItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasStringItem
+
+`func (o *TypeHolderDefault) HasStringItem() bool`
+
+HasStringItem returns a boolean if a field has been set.
+
+### SetStringItem
+
+`func (o *TypeHolderDefault) SetStringItem(v string)`
+
+SetStringItem gets a reference to the given string and assigns it to the StringItem field.
+
+### GetNumberItem
+
+`func (o *TypeHolderDefault) GetNumberItem() float32`
+
+GetNumberItem returns the NumberItem field if non-nil, zero value otherwise.
+
+### GetNumberItemOk
+
+`func (o *TypeHolderDefault) GetNumberItemOk() (float32, bool)`
+
+GetNumberItemOk returns a tuple with the NumberItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNumberItem
+
+`func (o *TypeHolderDefault) HasNumberItem() bool`
+
+HasNumberItem returns a boolean if a field has been set.
+
+### SetNumberItem
+
+`func (o *TypeHolderDefault) SetNumberItem(v float32)`
+
+SetNumberItem gets a reference to the given float32 and assigns it to the NumberItem field.
+
+### GetIntegerItem
+
+`func (o *TypeHolderDefault) GetIntegerItem() int32`
+
+GetIntegerItem returns the IntegerItem field if non-nil, zero value otherwise.
+
+### GetIntegerItemOk
+
+`func (o *TypeHolderDefault) GetIntegerItemOk() (int32, bool)`
+
+GetIntegerItemOk returns a tuple with the IntegerItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasIntegerItem
+
+`func (o *TypeHolderDefault) HasIntegerItem() bool`
+
+HasIntegerItem returns a boolean if a field has been set.
+
+### SetIntegerItem
+
+`func (o *TypeHolderDefault) SetIntegerItem(v int32)`
+
+SetIntegerItem gets a reference to the given int32 and assigns it to the IntegerItem field.
+
+### GetBoolItem
+
+`func (o *TypeHolderDefault) GetBoolItem() bool`
+
+GetBoolItem returns the BoolItem field if non-nil, zero value otherwise.
+
+### GetBoolItemOk
+
+`func (o *TypeHolderDefault) GetBoolItemOk() (bool, bool)`
+
+GetBoolItemOk returns a tuple with the BoolItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasBoolItem
+
+`func (o *TypeHolderDefault) HasBoolItem() bool`
+
+HasBoolItem returns a boolean if a field has been set.
+
+### SetBoolItem
+
+`func (o *TypeHolderDefault) SetBoolItem(v bool)`
+
+SetBoolItem gets a reference to the given bool and assigns it to the BoolItem field.
+
+### GetArrayItem
+
+`func (o *TypeHolderDefault) GetArrayItem() []int32`
+
+GetArrayItem returns the ArrayItem field if non-nil, zero value otherwise.
+
+### GetArrayItemOk
+
+`func (o *TypeHolderDefault) GetArrayItemOk() ([]int32, bool)`
+
+GetArrayItemOk returns a tuple with the ArrayItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasArrayItem
+
+`func (o *TypeHolderDefault) HasArrayItem() bool`
+
+HasArrayItem returns a boolean if a field has been set.
+
+### SetArrayItem
+
+`func (o *TypeHolderDefault) SetArrayItem(v []int32)`
+
+SetArrayItem gets a reference to the given []int32 and assigns it to the ArrayItem field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderExample.md b/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderExample.md
index abe85f9799d18d9c4f05ccd3ab16c309fea37750..f9a276c529f1ea8c51114bd01b7ce654e2ed87b8 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderExample.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderExample.md
@@ -4,11 +4,139 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**StringItem** | **string** |  | 
-**NumberItem** | **float32** |  | 
-**IntegerItem** | **int32** |  | 
-**BoolItem** | **bool** |  | 
-**ArrayItem** | **[]int32** |  | 
+**StringItem** | Pointer to **string** |  | 
+**NumberItem** | Pointer to **float32** |  | 
+**IntegerItem** | Pointer to **int32** |  | 
+**BoolItem** | Pointer to **bool** |  | 
+**ArrayItem** | Pointer to **[]int32** |  | 
+
+## Methods
+
+### GetStringItem
+
+`func (o *TypeHolderExample) GetStringItem() string`
+
+GetStringItem returns the StringItem field if non-nil, zero value otherwise.
+
+### GetStringItemOk
+
+`func (o *TypeHolderExample) GetStringItemOk() (string, bool)`
+
+GetStringItemOk returns a tuple with the StringItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasStringItem
+
+`func (o *TypeHolderExample) HasStringItem() bool`
+
+HasStringItem returns a boolean if a field has been set.
+
+### SetStringItem
+
+`func (o *TypeHolderExample) SetStringItem(v string)`
+
+SetStringItem gets a reference to the given string and assigns it to the StringItem field.
+
+### GetNumberItem
+
+`func (o *TypeHolderExample) GetNumberItem() float32`
+
+GetNumberItem returns the NumberItem field if non-nil, zero value otherwise.
+
+### GetNumberItemOk
+
+`func (o *TypeHolderExample) GetNumberItemOk() (float32, bool)`
+
+GetNumberItemOk returns a tuple with the NumberItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNumberItem
+
+`func (o *TypeHolderExample) HasNumberItem() bool`
+
+HasNumberItem returns a boolean if a field has been set.
+
+### SetNumberItem
+
+`func (o *TypeHolderExample) SetNumberItem(v float32)`
+
+SetNumberItem gets a reference to the given float32 and assigns it to the NumberItem field.
+
+### GetIntegerItem
+
+`func (o *TypeHolderExample) GetIntegerItem() int32`
+
+GetIntegerItem returns the IntegerItem field if non-nil, zero value otherwise.
+
+### GetIntegerItemOk
+
+`func (o *TypeHolderExample) GetIntegerItemOk() (int32, bool)`
+
+GetIntegerItemOk returns a tuple with the IntegerItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasIntegerItem
+
+`func (o *TypeHolderExample) HasIntegerItem() bool`
+
+HasIntegerItem returns a boolean if a field has been set.
+
+### SetIntegerItem
+
+`func (o *TypeHolderExample) SetIntegerItem(v int32)`
+
+SetIntegerItem gets a reference to the given int32 and assigns it to the IntegerItem field.
+
+### GetBoolItem
+
+`func (o *TypeHolderExample) GetBoolItem() bool`
+
+GetBoolItem returns the BoolItem field if non-nil, zero value otherwise.
+
+### GetBoolItemOk
+
+`func (o *TypeHolderExample) GetBoolItemOk() (bool, bool)`
+
+GetBoolItemOk returns a tuple with the BoolItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasBoolItem
+
+`func (o *TypeHolderExample) HasBoolItem() bool`
+
+HasBoolItem returns a boolean if a field has been set.
+
+### SetBoolItem
+
+`func (o *TypeHolderExample) SetBoolItem(v bool)`
+
+SetBoolItem gets a reference to the given bool and assigns it to the BoolItem field.
+
+### GetArrayItem
+
+`func (o *TypeHolderExample) GetArrayItem() []int32`
+
+GetArrayItem returns the ArrayItem field if non-nil, zero value otherwise.
+
+### GetArrayItemOk
+
+`func (o *TypeHolderExample) GetArrayItemOk() ([]int32, bool)`
+
+GetArrayItemOk returns a tuple with the ArrayItem field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasArrayItem
+
+`func (o *TypeHolderExample) HasArrayItem() bool`
+
+HasArrayItem returns a boolean if a field has been set.
+
+### SetArrayItem
+
+`func (o *TypeHolderExample) SetArrayItem(v []int32)`
+
+SetArrayItem gets a reference to the given []int32 and assigns it to the ArrayItem field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/User.md b/samples/client/petstore/go-experimental/go-petstore/docs/User.md
index 7675d7ff701b13f6238a12c90e16aebf4b047b1f..4f05d3b473e8d45246e6017c5a31bb5ae4f3adeb 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/User.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/User.md
@@ -4,14 +4,217 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**Id** | **int64** |  | [optional] 
-**Username** | **string** |  | [optional] 
-**FirstName** | **string** |  | [optional] 
-**LastName** | **string** |  | [optional] 
-**Email** | **string** |  | [optional] 
-**Password** | **string** |  | [optional] 
-**Phone** | **string** |  | [optional] 
-**UserStatus** | **int32** | User Status | [optional] 
+**Id** | Pointer to **int64** |  | [optional]
+**Username** | Pointer to **string** |  | [optional]
+**FirstName** | Pointer to **string** |  | [optional]
+**LastName** | Pointer to **string** |  | [optional]
+**Email** | Pointer to **string** |  | [optional]
+**Password** | Pointer to **string** |  | [optional]
+**Phone** | Pointer to **string** |  | [optional]
+**UserStatus** | Pointer to **int32** | User Status | [optional]
+
+## Methods
+
+### GetId
+
+`func (o *User) GetId() int64`
+
+GetId returns the Id field if non-nil, zero value otherwise.
+
+### GetIdOk
+
+`func (o *User) GetIdOk() (int64, bool)`
+
+GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasId
+
+`func (o *User) HasId() bool`
+
+HasId returns a boolean if a field has been set.
+
+### SetId
+
+`func (o *User) SetId(v int64)`
+
+SetId gets a reference to the given int64 and assigns it to the Id field.
+
+### GetUsername
+
+`func (o *User) GetUsername() string`
+
+GetUsername returns the Username field if non-nil, zero value otherwise.
+
+### GetUsernameOk
+
+`func (o *User) GetUsernameOk() (string, bool)`
+
+GetUsernameOk returns a tuple with the Username field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasUsername
+
+`func (o *User) HasUsername() bool`
+
+HasUsername returns a boolean if a field has been set.
+
+### SetUsername
+
+`func (o *User) SetUsername(v string)`
+
+SetUsername gets a reference to the given string and assigns it to the Username field.
+
+### GetFirstName
+
+`func (o *User) GetFirstName() string`
+
+GetFirstName returns the FirstName field if non-nil, zero value otherwise.
+
+### GetFirstNameOk
+
+`func (o *User) GetFirstNameOk() (string, bool)`
+
+GetFirstNameOk returns a tuple with the FirstName field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasFirstName
+
+`func (o *User) HasFirstName() bool`
+
+HasFirstName returns a boolean if a field has been set.
+
+### SetFirstName
+
+`func (o *User) SetFirstName(v string)`
+
+SetFirstName gets a reference to the given string and assigns it to the FirstName field.
+
+### GetLastName
+
+`func (o *User) GetLastName() string`
+
+GetLastName returns the LastName field if non-nil, zero value otherwise.
+
+### GetLastNameOk
+
+`func (o *User) GetLastNameOk() (string, bool)`
+
+GetLastNameOk returns a tuple with the LastName field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasLastName
+
+`func (o *User) HasLastName() bool`
+
+HasLastName returns a boolean if a field has been set.
+
+### SetLastName
+
+`func (o *User) SetLastName(v string)`
+
+SetLastName gets a reference to the given string and assigns it to the LastName field.
+
+### GetEmail
+
+`func (o *User) GetEmail() string`
+
+GetEmail returns the Email field if non-nil, zero value otherwise.
+
+### GetEmailOk
+
+`func (o *User) GetEmailOk() (string, bool)`
+
+GetEmailOk returns a tuple with the Email field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasEmail
+
+`func (o *User) HasEmail() bool`
+
+HasEmail returns a boolean if a field has been set.
+
+### SetEmail
+
+`func (o *User) SetEmail(v string)`
+
+SetEmail gets a reference to the given string and assigns it to the Email field.
+
+### GetPassword
+
+`func (o *User) GetPassword() string`
+
+GetPassword returns the Password field if non-nil, zero value otherwise.
+
+### GetPasswordOk
+
+`func (o *User) GetPasswordOk() (string, bool)`
+
+GetPasswordOk returns a tuple with the Password field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPassword
+
+`func (o *User) HasPassword() bool`
+
+HasPassword returns a boolean if a field has been set.
+
+### SetPassword
+
+`func (o *User) SetPassword(v string)`
+
+SetPassword gets a reference to the given string and assigns it to the Password field.
+
+### GetPhone
+
+`func (o *User) GetPhone() string`
+
+GetPhone returns the Phone field if non-nil, zero value otherwise.
+
+### GetPhoneOk
+
+`func (o *User) GetPhoneOk() (string, bool)`
+
+GetPhoneOk returns a tuple with the Phone field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPhone
+
+`func (o *User) HasPhone() bool`
+
+HasPhone returns a boolean if a field has been set.
+
+### SetPhone
+
+`func (o *User) SetPhone(v string)`
+
+SetPhone gets a reference to the given string and assigns it to the Phone field.
+
+### GetUserStatus
+
+`func (o *User) GetUserStatus() int32`
+
+GetUserStatus returns the UserStatus field if non-nil, zero value otherwise.
+
+### GetUserStatusOk
+
+`func (o *User) GetUserStatusOk() (int32, bool)`
+
+GetUserStatusOk returns a tuple with the UserStatus field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasUserStatus
+
+`func (o *User) HasUserStatus() bool`
+
+HasUserStatus returns a boolean if a field has been set.
+
+### SetUserStatus
+
+`func (o *User) SetUserStatus(v int32)`
+
+SetUserStatus gets a reference to the given int32 and assigns it to the UserStatus field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/XmlItem.md b/samples/client/petstore/go-experimental/go-petstore/docs/XmlItem.md
index 8a9c2dc0b5046d891b107026490d809c455f240f..cdee2ad0dd752153d3d954a7107809d19aac55d0 100644
--- a/samples/client/petstore/go-experimental/go-petstore/docs/XmlItem.md
+++ b/samples/client/petstore/go-experimental/go-petstore/docs/XmlItem.md
@@ -4,35 +4,763 @@
 
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
-**AttributeString** | **string** |  | [optional] 
-**AttributeNumber** | **float32** |  | [optional] 
-**AttributeInteger** | **int32** |  | [optional] 
-**AttributeBoolean** | **bool** |  | [optional] 
-**WrappedArray** | **[]int32** |  | [optional] 
-**NameString** | **string** |  | [optional] 
-**NameNumber** | **float32** |  | [optional] 
-**NameInteger** | **int32** |  | [optional] 
-**NameBoolean** | **bool** |  | [optional] 
-**NameArray** | **[]int32** |  | [optional] 
-**NameWrappedArray** | **[]int32** |  | [optional] 
-**PrefixString** | **string** |  | [optional] 
-**PrefixNumber** | **float32** |  | [optional] 
-**PrefixInteger** | **int32** |  | [optional] 
-**PrefixBoolean** | **bool** |  | [optional] 
-**PrefixArray** | **[]int32** |  | [optional] 
-**PrefixWrappedArray** | **[]int32** |  | [optional] 
-**NamespaceString** | **string** |  | [optional] 
-**NamespaceNumber** | **float32** |  | [optional] 
-**NamespaceInteger** | **int32** |  | [optional] 
-**NamespaceBoolean** | **bool** |  | [optional] 
-**NamespaceArray** | **[]int32** |  | [optional] 
-**NamespaceWrappedArray** | **[]int32** |  | [optional] 
-**PrefixNsString** | **string** |  | [optional] 
-**PrefixNsNumber** | **float32** |  | [optional] 
-**PrefixNsInteger** | **int32** |  | [optional] 
-**PrefixNsBoolean** | **bool** |  | [optional] 
-**PrefixNsArray** | **[]int32** |  | [optional] 
-**PrefixNsWrappedArray** | **[]int32** |  | [optional] 
+**AttributeString** | Pointer to **string** |  | [optional]
+**AttributeNumber** | Pointer to **float32** |  | [optional]
+**AttributeInteger** | Pointer to **int32** |  | [optional]
+**AttributeBoolean** | Pointer to **bool** |  | [optional]
+**WrappedArray** | Pointer to **[]int32** |  | [optional]
+**NameString** | Pointer to **string** |  | [optional]
+**NameNumber** | Pointer to **float32** |  | [optional]
+**NameInteger** | Pointer to **int32** |  | [optional]
+**NameBoolean** | Pointer to **bool** |  | [optional]
+**NameArray** | Pointer to **[]int32** |  | [optional]
+**NameWrappedArray** | Pointer to **[]int32** |  | [optional]
+**PrefixString** | Pointer to **string** |  | [optional]
+**PrefixNumber** | Pointer to **float32** |  | [optional]
+**PrefixInteger** | Pointer to **int32** |  | [optional]
+**PrefixBoolean** | Pointer to **bool** |  | [optional]
+**PrefixArray** | Pointer to **[]int32** |  | [optional]
+**PrefixWrappedArray** | Pointer to **[]int32** |  | [optional]
+**NamespaceString** | Pointer to **string** |  | [optional]
+**NamespaceNumber** | Pointer to **float32** |  | [optional]
+**NamespaceInteger** | Pointer to **int32** |  | [optional]
+**NamespaceBoolean** | Pointer to **bool** |  | [optional]
+**NamespaceArray** | Pointer to **[]int32** |  | [optional]
+**NamespaceWrappedArray** | Pointer to **[]int32** |  | [optional]
+**PrefixNsString** | Pointer to **string** |  | [optional]
+**PrefixNsNumber** | Pointer to **float32** |  | [optional]
+**PrefixNsInteger** | Pointer to **int32** |  | [optional]
+**PrefixNsBoolean** | Pointer to **bool** |  | [optional]
+**PrefixNsArray** | Pointer to **[]int32** |  | [optional]
+**PrefixNsWrappedArray** | Pointer to **[]int32** |  | [optional]
+
+## Methods
+
+### GetAttributeString
+
+`func (o *XmlItem) GetAttributeString() string`
+
+GetAttributeString returns the AttributeString field if non-nil, zero value otherwise.
+
+### GetAttributeStringOk
+
+`func (o *XmlItem) GetAttributeStringOk() (string, bool)`
+
+GetAttributeStringOk returns a tuple with the AttributeString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasAttributeString
+
+`func (o *XmlItem) HasAttributeString() bool`
+
+HasAttributeString returns a boolean if a field has been set.
+
+### SetAttributeString
+
+`func (o *XmlItem) SetAttributeString(v string)`
+
+SetAttributeString gets a reference to the given string and assigns it to the AttributeString field.
+
+### GetAttributeNumber
+
+`func (o *XmlItem) GetAttributeNumber() float32`
+
+GetAttributeNumber returns the AttributeNumber field if non-nil, zero value otherwise.
+
+### GetAttributeNumberOk
+
+`func (o *XmlItem) GetAttributeNumberOk() (float32, bool)`
+
+GetAttributeNumberOk returns a tuple with the AttributeNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasAttributeNumber
+
+`func (o *XmlItem) HasAttributeNumber() bool`
+
+HasAttributeNumber returns a boolean if a field has been set.
+
+### SetAttributeNumber
+
+`func (o *XmlItem) SetAttributeNumber(v float32)`
+
+SetAttributeNumber gets a reference to the given float32 and assigns it to the AttributeNumber field.
+
+### GetAttributeInteger
+
+`func (o *XmlItem) GetAttributeInteger() int32`
+
+GetAttributeInteger returns the AttributeInteger field if non-nil, zero value otherwise.
+
+### GetAttributeIntegerOk
+
+`func (o *XmlItem) GetAttributeIntegerOk() (int32, bool)`
+
+GetAttributeIntegerOk returns a tuple with the AttributeInteger field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasAttributeInteger
+
+`func (o *XmlItem) HasAttributeInteger() bool`
+
+HasAttributeInteger returns a boolean if a field has been set.
+
+### SetAttributeInteger
+
+`func (o *XmlItem) SetAttributeInteger(v int32)`
+
+SetAttributeInteger gets a reference to the given int32 and assigns it to the AttributeInteger field.
+
+### GetAttributeBoolean
+
+`func (o *XmlItem) GetAttributeBoolean() bool`
+
+GetAttributeBoolean returns the AttributeBoolean field if non-nil, zero value otherwise.
+
+### GetAttributeBooleanOk
+
+`func (o *XmlItem) GetAttributeBooleanOk() (bool, bool)`
+
+GetAttributeBooleanOk returns a tuple with the AttributeBoolean field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasAttributeBoolean
+
+`func (o *XmlItem) HasAttributeBoolean() bool`
+
+HasAttributeBoolean returns a boolean if a field has been set.
+
+### SetAttributeBoolean
+
+`func (o *XmlItem) SetAttributeBoolean(v bool)`
+
+SetAttributeBoolean gets a reference to the given bool and assigns it to the AttributeBoolean field.
+
+### GetWrappedArray
+
+`func (o *XmlItem) GetWrappedArray() []int32`
+
+GetWrappedArray returns the WrappedArray field if non-nil, zero value otherwise.
+
+### GetWrappedArrayOk
+
+`func (o *XmlItem) GetWrappedArrayOk() ([]int32, bool)`
+
+GetWrappedArrayOk returns a tuple with the WrappedArray field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasWrappedArray
+
+`func (o *XmlItem) HasWrappedArray() bool`
+
+HasWrappedArray returns a boolean if a field has been set.
+
+### SetWrappedArray
+
+`func (o *XmlItem) SetWrappedArray(v []int32)`
+
+SetWrappedArray gets a reference to the given []int32 and assigns it to the WrappedArray field.
+
+### GetNameString
+
+`func (o *XmlItem) GetNameString() string`
+
+GetNameString returns the NameString field if non-nil, zero value otherwise.
+
+### GetNameStringOk
+
+`func (o *XmlItem) GetNameStringOk() (string, bool)`
+
+GetNameStringOk returns a tuple with the NameString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNameString
+
+`func (o *XmlItem) HasNameString() bool`
+
+HasNameString returns a boolean if a field has been set.
+
+### SetNameString
+
+`func (o *XmlItem) SetNameString(v string)`
+
+SetNameString gets a reference to the given string and assigns it to the NameString field.
+
+### GetNameNumber
+
+`func (o *XmlItem) GetNameNumber() float32`
+
+GetNameNumber returns the NameNumber field if non-nil, zero value otherwise.
+
+### GetNameNumberOk
+
+`func (o *XmlItem) GetNameNumberOk() (float32, bool)`
+
+GetNameNumberOk returns a tuple with the NameNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNameNumber
+
+`func (o *XmlItem) HasNameNumber() bool`
+
+HasNameNumber returns a boolean if a field has been set.
+
+### SetNameNumber
+
+`func (o *XmlItem) SetNameNumber(v float32)`
+
+SetNameNumber gets a reference to the given float32 and assigns it to the NameNumber field.
+
+### GetNameInteger
+
+`func (o *XmlItem) GetNameInteger() int32`
+
+GetNameInteger returns the NameInteger field if non-nil, zero value otherwise.
+
+### GetNameIntegerOk
+
+`func (o *XmlItem) GetNameIntegerOk() (int32, bool)`
+
+GetNameIntegerOk returns a tuple with the NameInteger field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNameInteger
+
+`func (o *XmlItem) HasNameInteger() bool`
+
+HasNameInteger returns a boolean if a field has been set.
+
+### SetNameInteger
+
+`func (o *XmlItem) SetNameInteger(v int32)`
+
+SetNameInteger gets a reference to the given int32 and assigns it to the NameInteger field.
+
+### GetNameBoolean
+
+`func (o *XmlItem) GetNameBoolean() bool`
+
+GetNameBoolean returns the NameBoolean field if non-nil, zero value otherwise.
+
+### GetNameBooleanOk
+
+`func (o *XmlItem) GetNameBooleanOk() (bool, bool)`
+
+GetNameBooleanOk returns a tuple with the NameBoolean field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNameBoolean
+
+`func (o *XmlItem) HasNameBoolean() bool`
+
+HasNameBoolean returns a boolean if a field has been set.
+
+### SetNameBoolean
+
+`func (o *XmlItem) SetNameBoolean(v bool)`
+
+SetNameBoolean gets a reference to the given bool and assigns it to the NameBoolean field.
+
+### GetNameArray
+
+`func (o *XmlItem) GetNameArray() []int32`
+
+GetNameArray returns the NameArray field if non-nil, zero value otherwise.
+
+### GetNameArrayOk
+
+`func (o *XmlItem) GetNameArrayOk() ([]int32, bool)`
+
+GetNameArrayOk returns a tuple with the NameArray field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNameArray
+
+`func (o *XmlItem) HasNameArray() bool`
+
+HasNameArray returns a boolean if a field has been set.
+
+### SetNameArray
+
+`func (o *XmlItem) SetNameArray(v []int32)`
+
+SetNameArray gets a reference to the given []int32 and assigns it to the NameArray field.
+
+### GetNameWrappedArray
+
+`func (o *XmlItem) GetNameWrappedArray() []int32`
+
+GetNameWrappedArray returns the NameWrappedArray field if non-nil, zero value otherwise.
+
+### GetNameWrappedArrayOk
+
+`func (o *XmlItem) GetNameWrappedArrayOk() ([]int32, bool)`
+
+GetNameWrappedArrayOk returns a tuple with the NameWrappedArray field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNameWrappedArray
+
+`func (o *XmlItem) HasNameWrappedArray() bool`
+
+HasNameWrappedArray returns a boolean if a field has been set.
+
+### SetNameWrappedArray
+
+`func (o *XmlItem) SetNameWrappedArray(v []int32)`
+
+SetNameWrappedArray gets a reference to the given []int32 and assigns it to the NameWrappedArray field.
+
+### GetPrefixString
+
+`func (o *XmlItem) GetPrefixString() string`
+
+GetPrefixString returns the PrefixString field if non-nil, zero value otherwise.
+
+### GetPrefixStringOk
+
+`func (o *XmlItem) GetPrefixStringOk() (string, bool)`
+
+GetPrefixStringOk returns a tuple with the PrefixString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixString
+
+`func (o *XmlItem) HasPrefixString() bool`
+
+HasPrefixString returns a boolean if a field has been set.
+
+### SetPrefixString
+
+`func (o *XmlItem) SetPrefixString(v string)`
+
+SetPrefixString gets a reference to the given string and assigns it to the PrefixString field.
+
+### GetPrefixNumber
+
+`func (o *XmlItem) GetPrefixNumber() float32`
+
+GetPrefixNumber returns the PrefixNumber field if non-nil, zero value otherwise.
+
+### GetPrefixNumberOk
+
+`func (o *XmlItem) GetPrefixNumberOk() (float32, bool)`
+
+GetPrefixNumberOk returns a tuple with the PrefixNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixNumber
+
+`func (o *XmlItem) HasPrefixNumber() bool`
+
+HasPrefixNumber returns a boolean if a field has been set.
+
+### SetPrefixNumber
+
+`func (o *XmlItem) SetPrefixNumber(v float32)`
+
+SetPrefixNumber gets a reference to the given float32 and assigns it to the PrefixNumber field.
+
+### GetPrefixInteger
+
+`func (o *XmlItem) GetPrefixInteger() int32`
+
+GetPrefixInteger returns the PrefixInteger field if non-nil, zero value otherwise.
+
+### GetPrefixIntegerOk
+
+`func (o *XmlItem) GetPrefixIntegerOk() (int32, bool)`
+
+GetPrefixIntegerOk returns a tuple with the PrefixInteger field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixInteger
+
+`func (o *XmlItem) HasPrefixInteger() bool`
+
+HasPrefixInteger returns a boolean if a field has been set.
+
+### SetPrefixInteger
+
+`func (o *XmlItem) SetPrefixInteger(v int32)`
+
+SetPrefixInteger gets a reference to the given int32 and assigns it to the PrefixInteger field.
+
+### GetPrefixBoolean
+
+`func (o *XmlItem) GetPrefixBoolean() bool`
+
+GetPrefixBoolean returns the PrefixBoolean field if non-nil, zero value otherwise.
+
+### GetPrefixBooleanOk
+
+`func (o *XmlItem) GetPrefixBooleanOk() (bool, bool)`
+
+GetPrefixBooleanOk returns a tuple with the PrefixBoolean field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixBoolean
+
+`func (o *XmlItem) HasPrefixBoolean() bool`
+
+HasPrefixBoolean returns a boolean if a field has been set.
+
+### SetPrefixBoolean
+
+`func (o *XmlItem) SetPrefixBoolean(v bool)`
+
+SetPrefixBoolean gets a reference to the given bool and assigns it to the PrefixBoolean field.
+
+### GetPrefixArray
+
+`func (o *XmlItem) GetPrefixArray() []int32`
+
+GetPrefixArray returns the PrefixArray field if non-nil, zero value otherwise.
+
+### GetPrefixArrayOk
+
+`func (o *XmlItem) GetPrefixArrayOk() ([]int32, bool)`
+
+GetPrefixArrayOk returns a tuple with the PrefixArray field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixArray
+
+`func (o *XmlItem) HasPrefixArray() bool`
+
+HasPrefixArray returns a boolean if a field has been set.
+
+### SetPrefixArray
+
+`func (o *XmlItem) SetPrefixArray(v []int32)`
+
+SetPrefixArray gets a reference to the given []int32 and assigns it to the PrefixArray field.
+
+### GetPrefixWrappedArray
+
+`func (o *XmlItem) GetPrefixWrappedArray() []int32`
+
+GetPrefixWrappedArray returns the PrefixWrappedArray field if non-nil, zero value otherwise.
+
+### GetPrefixWrappedArrayOk
+
+`func (o *XmlItem) GetPrefixWrappedArrayOk() ([]int32, bool)`
+
+GetPrefixWrappedArrayOk returns a tuple with the PrefixWrappedArray field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixWrappedArray
+
+`func (o *XmlItem) HasPrefixWrappedArray() bool`
+
+HasPrefixWrappedArray returns a boolean if a field has been set.
+
+### SetPrefixWrappedArray
+
+`func (o *XmlItem) SetPrefixWrappedArray(v []int32)`
+
+SetPrefixWrappedArray gets a reference to the given []int32 and assigns it to the PrefixWrappedArray field.
+
+### GetNamespaceString
+
+`func (o *XmlItem) GetNamespaceString() string`
+
+GetNamespaceString returns the NamespaceString field if non-nil, zero value otherwise.
+
+### GetNamespaceStringOk
+
+`func (o *XmlItem) GetNamespaceStringOk() (string, bool)`
+
+GetNamespaceStringOk returns a tuple with the NamespaceString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNamespaceString
+
+`func (o *XmlItem) HasNamespaceString() bool`
+
+HasNamespaceString returns a boolean if a field has been set.
+
+### SetNamespaceString
+
+`func (o *XmlItem) SetNamespaceString(v string)`
+
+SetNamespaceString gets a reference to the given string and assigns it to the NamespaceString field.
+
+### GetNamespaceNumber
+
+`func (o *XmlItem) GetNamespaceNumber() float32`
+
+GetNamespaceNumber returns the NamespaceNumber field if non-nil, zero value otherwise.
+
+### GetNamespaceNumberOk
+
+`func (o *XmlItem) GetNamespaceNumberOk() (float32, bool)`
+
+GetNamespaceNumberOk returns a tuple with the NamespaceNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNamespaceNumber
+
+`func (o *XmlItem) HasNamespaceNumber() bool`
+
+HasNamespaceNumber returns a boolean if a field has been set.
+
+### SetNamespaceNumber
+
+`func (o *XmlItem) SetNamespaceNumber(v float32)`
+
+SetNamespaceNumber gets a reference to the given float32 and assigns it to the NamespaceNumber field.
+
+### GetNamespaceInteger
+
+`func (o *XmlItem) GetNamespaceInteger() int32`
+
+GetNamespaceInteger returns the NamespaceInteger field if non-nil, zero value otherwise.
+
+### GetNamespaceIntegerOk
+
+`func (o *XmlItem) GetNamespaceIntegerOk() (int32, bool)`
+
+GetNamespaceIntegerOk returns a tuple with the NamespaceInteger field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNamespaceInteger
+
+`func (o *XmlItem) HasNamespaceInteger() bool`
+
+HasNamespaceInteger returns a boolean if a field has been set.
+
+### SetNamespaceInteger
+
+`func (o *XmlItem) SetNamespaceInteger(v int32)`
+
+SetNamespaceInteger gets a reference to the given int32 and assigns it to the NamespaceInteger field.
+
+### GetNamespaceBoolean
+
+`func (o *XmlItem) GetNamespaceBoolean() bool`
+
+GetNamespaceBoolean returns the NamespaceBoolean field if non-nil, zero value otherwise.
+
+### GetNamespaceBooleanOk
+
+`func (o *XmlItem) GetNamespaceBooleanOk() (bool, bool)`
+
+GetNamespaceBooleanOk returns a tuple with the NamespaceBoolean field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNamespaceBoolean
+
+`func (o *XmlItem) HasNamespaceBoolean() bool`
+
+HasNamespaceBoolean returns a boolean if a field has been set.
+
+### SetNamespaceBoolean
+
+`func (o *XmlItem) SetNamespaceBoolean(v bool)`
+
+SetNamespaceBoolean gets a reference to the given bool and assigns it to the NamespaceBoolean field.
+
+### GetNamespaceArray
+
+`func (o *XmlItem) GetNamespaceArray() []int32`
+
+GetNamespaceArray returns the NamespaceArray field if non-nil, zero value otherwise.
+
+### GetNamespaceArrayOk
+
+`func (o *XmlItem) GetNamespaceArrayOk() ([]int32, bool)`
+
+GetNamespaceArrayOk returns a tuple with the NamespaceArray field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNamespaceArray
+
+`func (o *XmlItem) HasNamespaceArray() bool`
+
+HasNamespaceArray returns a boolean if a field has been set.
+
+### SetNamespaceArray
+
+`func (o *XmlItem) SetNamespaceArray(v []int32)`
+
+SetNamespaceArray gets a reference to the given []int32 and assigns it to the NamespaceArray field.
+
+### GetNamespaceWrappedArray
+
+`func (o *XmlItem) GetNamespaceWrappedArray() []int32`
+
+GetNamespaceWrappedArray returns the NamespaceWrappedArray field if non-nil, zero value otherwise.
+
+### GetNamespaceWrappedArrayOk
+
+`func (o *XmlItem) GetNamespaceWrappedArrayOk() ([]int32, bool)`
+
+GetNamespaceWrappedArrayOk returns a tuple with the NamespaceWrappedArray field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasNamespaceWrappedArray
+
+`func (o *XmlItem) HasNamespaceWrappedArray() bool`
+
+HasNamespaceWrappedArray returns a boolean if a field has been set.
+
+### SetNamespaceWrappedArray
+
+`func (o *XmlItem) SetNamespaceWrappedArray(v []int32)`
+
+SetNamespaceWrappedArray gets a reference to the given []int32 and assigns it to the NamespaceWrappedArray field.
+
+### GetPrefixNsString
+
+`func (o *XmlItem) GetPrefixNsString() string`
+
+GetPrefixNsString returns the PrefixNsString field if non-nil, zero value otherwise.
+
+### GetPrefixNsStringOk
+
+`func (o *XmlItem) GetPrefixNsStringOk() (string, bool)`
+
+GetPrefixNsStringOk returns a tuple with the PrefixNsString field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixNsString
+
+`func (o *XmlItem) HasPrefixNsString() bool`
+
+HasPrefixNsString returns a boolean if a field has been set.
+
+### SetPrefixNsString
+
+`func (o *XmlItem) SetPrefixNsString(v string)`
+
+SetPrefixNsString gets a reference to the given string and assigns it to the PrefixNsString field.
+
+### GetPrefixNsNumber
+
+`func (o *XmlItem) GetPrefixNsNumber() float32`
+
+GetPrefixNsNumber returns the PrefixNsNumber field if non-nil, zero value otherwise.
+
+### GetPrefixNsNumberOk
+
+`func (o *XmlItem) GetPrefixNsNumberOk() (float32, bool)`
+
+GetPrefixNsNumberOk returns a tuple with the PrefixNsNumber field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixNsNumber
+
+`func (o *XmlItem) HasPrefixNsNumber() bool`
+
+HasPrefixNsNumber returns a boolean if a field has been set.
+
+### SetPrefixNsNumber
+
+`func (o *XmlItem) SetPrefixNsNumber(v float32)`
+
+SetPrefixNsNumber gets a reference to the given float32 and assigns it to the PrefixNsNumber field.
+
+### GetPrefixNsInteger
+
+`func (o *XmlItem) GetPrefixNsInteger() int32`
+
+GetPrefixNsInteger returns the PrefixNsInteger field if non-nil, zero value otherwise.
+
+### GetPrefixNsIntegerOk
+
+`func (o *XmlItem) GetPrefixNsIntegerOk() (int32, bool)`
+
+GetPrefixNsIntegerOk returns a tuple with the PrefixNsInteger field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixNsInteger
+
+`func (o *XmlItem) HasPrefixNsInteger() bool`
+
+HasPrefixNsInteger returns a boolean if a field has been set.
+
+### SetPrefixNsInteger
+
+`func (o *XmlItem) SetPrefixNsInteger(v int32)`
+
+SetPrefixNsInteger gets a reference to the given int32 and assigns it to the PrefixNsInteger field.
+
+### GetPrefixNsBoolean
+
+`func (o *XmlItem) GetPrefixNsBoolean() bool`
+
+GetPrefixNsBoolean returns the PrefixNsBoolean field if non-nil, zero value otherwise.
+
+### GetPrefixNsBooleanOk
+
+`func (o *XmlItem) GetPrefixNsBooleanOk() (bool, bool)`
+
+GetPrefixNsBooleanOk returns a tuple with the PrefixNsBoolean field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixNsBoolean
+
+`func (o *XmlItem) HasPrefixNsBoolean() bool`
+
+HasPrefixNsBoolean returns a boolean if a field has been set.
+
+### SetPrefixNsBoolean
+
+`func (o *XmlItem) SetPrefixNsBoolean(v bool)`
+
+SetPrefixNsBoolean gets a reference to the given bool and assigns it to the PrefixNsBoolean field.
+
+### GetPrefixNsArray
+
+`func (o *XmlItem) GetPrefixNsArray() []int32`
+
+GetPrefixNsArray returns the PrefixNsArray field if non-nil, zero value otherwise.
+
+### GetPrefixNsArrayOk
+
+`func (o *XmlItem) GetPrefixNsArrayOk() ([]int32, bool)`
+
+GetPrefixNsArrayOk returns a tuple with the PrefixNsArray field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixNsArray
+
+`func (o *XmlItem) HasPrefixNsArray() bool`
+
+HasPrefixNsArray returns a boolean if a field has been set.
+
+### SetPrefixNsArray
+
+`func (o *XmlItem) SetPrefixNsArray(v []int32)`
+
+SetPrefixNsArray gets a reference to the given []int32 and assigns it to the PrefixNsArray field.
+
+### GetPrefixNsWrappedArray
+
+`func (o *XmlItem) GetPrefixNsWrappedArray() []int32`
+
+GetPrefixNsWrappedArray returns the PrefixNsWrappedArray field if non-nil, zero value otherwise.
+
+### GetPrefixNsWrappedArrayOk
+
+`func (o *XmlItem) GetPrefixNsWrappedArrayOk() ([]int32, bool)`
+
+GetPrefixNsWrappedArrayOk returns a tuple with the PrefixNsWrappedArray field if it's non-nil, zero value otherwise
+and a boolean to check if the value has been set.
+
+### HasPrefixNsWrappedArray
+
+`func (o *XmlItem) HasPrefixNsWrappedArray() bool`
+
+HasPrefixNsWrappedArray returns a boolean if a field has been set.
+
+### SetPrefixNsWrappedArray
+
+`func (o *XmlItem) SetPrefixNsWrappedArray(v []int32)`
+
+SetPrefixNsWrappedArray gets a reference to the given []int32 and assigns it to the PrefixNsWrappedArray field.
+
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
 
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_200_response.go b/samples/client/petstore/go-experimental/go-petstore/model_200_response.go
index f918cabaaae2177b338c739a7c321477e2c7216d..97ced8c6d195993f171455679167462ad343c740 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_200_response.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_200_response.go
@@ -8,9 +8,94 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 // Model for testing model name starting with number
 type Model200Response struct {
-	Name int32 `json:"name,omitempty"`
-	Class string `json:"class,omitempty"`
+	Name *int32 `json:"name,omitempty"`
+
+	Class *string `json:"class,omitempty"`
+
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *Model200Response) GetName() int32 {
+	if o == nil || o.Name == nil {
+		var ret int32
+		return ret
+	}
+	return *o.Name
+}
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Model200Response) GetNameOk() (int32, bool) {
+	if o == nil || o.Name == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *Model200Response) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetName gets a reference to the given int32 and assigns it to the Name field.
+func (o *Model200Response) SetName(v int32) {
+	o.Name = &v
+}
+
+// GetClass returns the Class field if non-nil, zero value otherwise.
+func (o *Model200Response) GetClass() string {
+	if o == nil || o.Class == nil {
+		var ret string
+		return ret
+	}
+	return *o.Class
 }
+
+// GetClassOk returns a tuple with the Class field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Model200Response) GetClassOk() (string, bool) {
+	if o == nil || o.Class == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Class, true
+}
+
+// HasClass returns a boolean if a field has been set.
+func (o *Model200Response) HasClass() bool {
+	if o != nil && o.Class != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetClass gets a reference to the given string and assigns it to the Class field.
+func (o *Model200Response) SetClass(v string) {
+	o.Class = &v
+}
+
+
+func (o Model200Response) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	if o.Class != nil {
+		toSerialize["class"] = o.Class
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_any_type.go b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_any_type.go
index ca06584a72f74d69f3ac35b190d80d7e187b304f..baa81b92e58643f4782504f7bd8d992028e8a921 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_any_type.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_any_type.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type AdditionalPropertiesAnyType struct {
-	Name string `json:"name,omitempty"`
+	Name *string `json:"name,omitempty"`
+
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesAnyType) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
+}
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesAnyType) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *AdditionalPropertiesAnyType) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *AdditionalPropertiesAnyType) SetName(v string) {
+	o.Name = &v
+}
+
+
+func (o AdditionalPropertiesAnyType) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_array.go b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_array.go
index 2e71585506f6f0a8e03357c97d2e85517557eccf..0ccbf37442e7dec2eedc49d373373fbf5930021d 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_array.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_array.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type AdditionalPropertiesArray struct {
-	Name string `json:"name,omitempty"`
+	Name *string `json:"name,omitempty"`
+
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesArray) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
+}
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesArray) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *AdditionalPropertiesArray) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *AdditionalPropertiesArray) SetName(v string) {
+	o.Name = &v
+}
+
+
+func (o AdditionalPropertiesArray) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_boolean.go b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_boolean.go
index 09f1ac3b32bc27a6cd7784533e48cff6d304b879..efa95a8767d68a365bf054574e70eedeba5b48e1 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_boolean.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_boolean.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type AdditionalPropertiesBoolean struct {
-	Name string `json:"name,omitempty"`
+	Name *string `json:"name,omitempty"`
+
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesBoolean) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
+}
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesBoolean) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *AdditionalPropertiesBoolean) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *AdditionalPropertiesBoolean) SetName(v string) {
+	o.Name = &v
+}
+
+
+func (o AdditionalPropertiesBoolean) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_class.go b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_class.go
index 2e1845e194f68f5956ddf242a9c40893e2d5d9dd..534148d11de7c4ad0746518add1de929701aec58 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_class.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_class.go
@@ -8,17 +8,435 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type AdditionalPropertiesClass struct {
-	MapString map[string]string `json:"map_string,omitempty"`
-	MapNumber map[string]float32 `json:"map_number,omitempty"`
-	MapInteger map[string]int32 `json:"map_integer,omitempty"`
-	MapBoolean map[string]bool `json:"map_boolean,omitempty"`
-	MapArrayInteger map[string][]int32 `json:"map_array_integer,omitempty"`
-	MapArrayAnytype map[string][]map[string]interface{} `json:"map_array_anytype,omitempty"`
-	MapMapString map[string]map[string]string `json:"map_map_string,omitempty"`
-	MapMapAnytype map[string]map[string]map[string]interface{} `json:"map_map_anytype,omitempty"`
-	Anytype1 map[string]interface{} `json:"anytype_1,omitempty"`
-	Anytype2 map[string]interface{} `json:"anytype_2,omitempty"`
-	Anytype3 map[string]interface{} `json:"anytype_3,omitempty"`
+	MapString *map[string]string `json:"map_string,omitempty"`
+
+	MapNumber *map[string]float32 `json:"map_number,omitempty"`
+
+	MapInteger *map[string]int32 `json:"map_integer,omitempty"`
+
+	MapBoolean *map[string]bool `json:"map_boolean,omitempty"`
+
+	MapArrayInteger *map[string][]int32 `json:"map_array_integer,omitempty"`
+
+	MapArrayAnytype *map[string][]map[string]interface{} `json:"map_array_anytype,omitempty"`
+
+	MapMapString *map[string]map[string]string `json:"map_map_string,omitempty"`
+
+	MapMapAnytype *map[string]map[string]map[string]interface{} `json:"map_map_anytype,omitempty"`
+
+	Anytype1 *map[string]interface{} `json:"anytype_1,omitempty"`
+
+	Anytype2 *map[string]interface{} `json:"anytype_2,omitempty"`
+
+	Anytype3 *map[string]interface{} `json:"anytype_3,omitempty"`
+
+}
+
+// GetMapString returns the MapString field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetMapString() map[string]string {
+	if o == nil || o.MapString == nil {
+		var ret map[string]string
+		return ret
+	}
+	return *o.MapString
+}
+
+// GetMapStringOk returns a tuple with the MapString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetMapStringOk() (map[string]string, bool) {
+	if o == nil || o.MapString == nil {
+		var ret map[string]string
+		return ret, false
+	}
+	return *o.MapString, true
+}
+
+// HasMapString returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasMapString() bool {
+	if o != nil && o.MapString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapString gets a reference to the given map[string]string and assigns it to the MapString field.
+func (o *AdditionalPropertiesClass) SetMapString(v map[string]string) {
+	o.MapString = &v
+}
+
+// GetMapNumber returns the MapNumber field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetMapNumber() map[string]float32 {
+	if o == nil || o.MapNumber == nil {
+		var ret map[string]float32
+		return ret
+	}
+	return *o.MapNumber
+}
+
+// GetMapNumberOk returns a tuple with the MapNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetMapNumberOk() (map[string]float32, bool) {
+	if o == nil || o.MapNumber == nil {
+		var ret map[string]float32
+		return ret, false
+	}
+	return *o.MapNumber, true
+}
+
+// HasMapNumber returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasMapNumber() bool {
+	if o != nil && o.MapNumber != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapNumber gets a reference to the given map[string]float32 and assigns it to the MapNumber field.
+func (o *AdditionalPropertiesClass) SetMapNumber(v map[string]float32) {
+	o.MapNumber = &v
+}
+
+// GetMapInteger returns the MapInteger field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetMapInteger() map[string]int32 {
+	if o == nil || o.MapInteger == nil {
+		var ret map[string]int32
+		return ret
+	}
+	return *o.MapInteger
+}
+
+// GetMapIntegerOk returns a tuple with the MapInteger field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetMapIntegerOk() (map[string]int32, bool) {
+	if o == nil || o.MapInteger == nil {
+		var ret map[string]int32
+		return ret, false
+	}
+	return *o.MapInteger, true
+}
+
+// HasMapInteger returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasMapInteger() bool {
+	if o != nil && o.MapInteger != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapInteger gets a reference to the given map[string]int32 and assigns it to the MapInteger field.
+func (o *AdditionalPropertiesClass) SetMapInteger(v map[string]int32) {
+	o.MapInteger = &v
+}
+
+// GetMapBoolean returns the MapBoolean field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetMapBoolean() map[string]bool {
+	if o == nil || o.MapBoolean == nil {
+		var ret map[string]bool
+		return ret
+	}
+	return *o.MapBoolean
+}
+
+// GetMapBooleanOk returns a tuple with the MapBoolean field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetMapBooleanOk() (map[string]bool, bool) {
+	if o == nil || o.MapBoolean == nil {
+		var ret map[string]bool
+		return ret, false
+	}
+	return *o.MapBoolean, true
+}
+
+// HasMapBoolean returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasMapBoolean() bool {
+	if o != nil && o.MapBoolean != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapBoolean gets a reference to the given map[string]bool and assigns it to the MapBoolean field.
+func (o *AdditionalPropertiesClass) SetMapBoolean(v map[string]bool) {
+	o.MapBoolean = &v
+}
+
+// GetMapArrayInteger returns the MapArrayInteger field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetMapArrayInteger() map[string][]int32 {
+	if o == nil || o.MapArrayInteger == nil {
+		var ret map[string][]int32
+		return ret
+	}
+	return *o.MapArrayInteger
+}
+
+// GetMapArrayIntegerOk returns a tuple with the MapArrayInteger field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetMapArrayIntegerOk() (map[string][]int32, bool) {
+	if o == nil || o.MapArrayInteger == nil {
+		var ret map[string][]int32
+		return ret, false
+	}
+	return *o.MapArrayInteger, true
+}
+
+// HasMapArrayInteger returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasMapArrayInteger() bool {
+	if o != nil && o.MapArrayInteger != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapArrayInteger gets a reference to the given map[string][]int32 and assigns it to the MapArrayInteger field.
+func (o *AdditionalPropertiesClass) SetMapArrayInteger(v map[string][]int32) {
+	o.MapArrayInteger = &v
+}
+
+// GetMapArrayAnytype returns the MapArrayAnytype field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetMapArrayAnytype() map[string][]map[string]interface{} {
+	if o == nil || o.MapArrayAnytype == nil {
+		var ret map[string][]map[string]interface{}
+		return ret
+	}
+	return *o.MapArrayAnytype
 }
+
+// GetMapArrayAnytypeOk returns a tuple with the MapArrayAnytype field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetMapArrayAnytypeOk() (map[string][]map[string]interface{}, bool) {
+	if o == nil || o.MapArrayAnytype == nil {
+		var ret map[string][]map[string]interface{}
+		return ret, false
+	}
+	return *o.MapArrayAnytype, true
+}
+
+// HasMapArrayAnytype returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasMapArrayAnytype() bool {
+	if o != nil && o.MapArrayAnytype != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapArrayAnytype gets a reference to the given map[string][]map[string]interface{} and assigns it to the MapArrayAnytype field.
+func (o *AdditionalPropertiesClass) SetMapArrayAnytype(v map[string][]map[string]interface{}) {
+	o.MapArrayAnytype = &v
+}
+
+// GetMapMapString returns the MapMapString field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetMapMapString() map[string]map[string]string {
+	if o == nil || o.MapMapString == nil {
+		var ret map[string]map[string]string
+		return ret
+	}
+	return *o.MapMapString
+}
+
+// GetMapMapStringOk returns a tuple with the MapMapString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetMapMapStringOk() (map[string]map[string]string, bool) {
+	if o == nil || o.MapMapString == nil {
+		var ret map[string]map[string]string
+		return ret, false
+	}
+	return *o.MapMapString, true
+}
+
+// HasMapMapString returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasMapMapString() bool {
+	if o != nil && o.MapMapString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapMapString gets a reference to the given map[string]map[string]string and assigns it to the MapMapString field.
+func (o *AdditionalPropertiesClass) SetMapMapString(v map[string]map[string]string) {
+	o.MapMapString = &v
+}
+
+// GetMapMapAnytype returns the MapMapAnytype field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetMapMapAnytype() map[string]map[string]map[string]interface{} {
+	if o == nil || o.MapMapAnytype == nil {
+		var ret map[string]map[string]map[string]interface{}
+		return ret
+	}
+	return *o.MapMapAnytype
+}
+
+// GetMapMapAnytypeOk returns a tuple with the MapMapAnytype field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetMapMapAnytypeOk() (map[string]map[string]map[string]interface{}, bool) {
+	if o == nil || o.MapMapAnytype == nil {
+		var ret map[string]map[string]map[string]interface{}
+		return ret, false
+	}
+	return *o.MapMapAnytype, true
+}
+
+// HasMapMapAnytype returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasMapMapAnytype() bool {
+	if o != nil && o.MapMapAnytype != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapMapAnytype gets a reference to the given map[string]map[string]map[string]interface{} and assigns it to the MapMapAnytype field.
+func (o *AdditionalPropertiesClass) SetMapMapAnytype(v map[string]map[string]map[string]interface{}) {
+	o.MapMapAnytype = &v
+}
+
+// GetAnytype1 returns the Anytype1 field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetAnytype1() map[string]interface{} {
+	if o == nil || o.Anytype1 == nil {
+		var ret map[string]interface{}
+		return ret
+	}
+	return *o.Anytype1
+}
+
+// GetAnytype1Ok returns a tuple with the Anytype1 field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetAnytype1Ok() (map[string]interface{}, bool) {
+	if o == nil || o.Anytype1 == nil {
+		var ret map[string]interface{}
+		return ret, false
+	}
+	return *o.Anytype1, true
+}
+
+// HasAnytype1 returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasAnytype1() bool {
+	if o != nil && o.Anytype1 != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetAnytype1 gets a reference to the given map[string]interface{} and assigns it to the Anytype1 field.
+func (o *AdditionalPropertiesClass) SetAnytype1(v map[string]interface{}) {
+	o.Anytype1 = &v
+}
+
+// GetAnytype2 returns the Anytype2 field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetAnytype2() map[string]interface{} {
+	if o == nil || o.Anytype2 == nil {
+		var ret map[string]interface{}
+		return ret
+	}
+	return *o.Anytype2
+}
+
+// GetAnytype2Ok returns a tuple with the Anytype2 field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetAnytype2Ok() (map[string]interface{}, bool) {
+	if o == nil || o.Anytype2 == nil {
+		var ret map[string]interface{}
+		return ret, false
+	}
+	return *o.Anytype2, true
+}
+
+// HasAnytype2 returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasAnytype2() bool {
+	if o != nil && o.Anytype2 != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetAnytype2 gets a reference to the given map[string]interface{} and assigns it to the Anytype2 field.
+func (o *AdditionalPropertiesClass) SetAnytype2(v map[string]interface{}) {
+	o.Anytype2 = &v
+}
+
+// GetAnytype3 returns the Anytype3 field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesClass) GetAnytype3() map[string]interface{} {
+	if o == nil || o.Anytype3 == nil {
+		var ret map[string]interface{}
+		return ret
+	}
+	return *o.Anytype3
+}
+
+// GetAnytype3Ok returns a tuple with the Anytype3 field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesClass) GetAnytype3Ok() (map[string]interface{}, bool) {
+	if o == nil || o.Anytype3 == nil {
+		var ret map[string]interface{}
+		return ret, false
+	}
+	return *o.Anytype3, true
+}
+
+// HasAnytype3 returns a boolean if a field has been set.
+func (o *AdditionalPropertiesClass) HasAnytype3() bool {
+	if o != nil && o.Anytype3 != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetAnytype3 gets a reference to the given map[string]interface{} and assigns it to the Anytype3 field.
+func (o *AdditionalPropertiesClass) SetAnytype3(v map[string]interface{}) {
+	o.Anytype3 = &v
+}
+
+
+func (o AdditionalPropertiesClass) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.MapString != nil {
+		toSerialize["map_string"] = o.MapString
+	}
+	if o.MapNumber != nil {
+		toSerialize["map_number"] = o.MapNumber
+	}
+	if o.MapInteger != nil {
+		toSerialize["map_integer"] = o.MapInteger
+	}
+	if o.MapBoolean != nil {
+		toSerialize["map_boolean"] = o.MapBoolean
+	}
+	if o.MapArrayInteger != nil {
+		toSerialize["map_array_integer"] = o.MapArrayInteger
+	}
+	if o.MapArrayAnytype != nil {
+		toSerialize["map_array_anytype"] = o.MapArrayAnytype
+	}
+	if o.MapMapString != nil {
+		toSerialize["map_map_string"] = o.MapMapString
+	}
+	if o.MapMapAnytype != nil {
+		toSerialize["map_map_anytype"] = o.MapMapAnytype
+	}
+	if o.Anytype1 != nil {
+		toSerialize["anytype_1"] = o.Anytype1
+	}
+	if o.Anytype2 != nil {
+		toSerialize["anytype_2"] = o.Anytype2
+	}
+	if o.Anytype3 != nil {
+		toSerialize["anytype_3"] = o.Anytype3
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_integer.go b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_integer.go
index 2f69fe4b01259fd5856960cfcdb79a192d606700..05dea42d5117ac5cb75f90ac6541320f46489f8d 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_integer.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_integer.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type AdditionalPropertiesInteger struct {
-	Name string `json:"name,omitempty"`
+	Name *string `json:"name,omitempty"`
+
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesInteger) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
+}
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesInteger) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *AdditionalPropertiesInteger) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *AdditionalPropertiesInteger) SetName(v string) {
+	o.Name = &v
+}
+
+
+func (o AdditionalPropertiesInteger) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_number.go b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_number.go
index 900b2ec32cc9d1c98e7c3d58ac3719f09e1fd187..484c9d79ad9fe6da8bdcfb4e2c94296c14167d1a 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_number.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_number.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type AdditionalPropertiesNumber struct {
-	Name string `json:"name,omitempty"`
+	Name *string `json:"name,omitempty"`
+
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesNumber) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
+}
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesNumber) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *AdditionalPropertiesNumber) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *AdditionalPropertiesNumber) SetName(v string) {
+	o.Name = &v
+}
+
+
+func (o AdditionalPropertiesNumber) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_object.go b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_object.go
index 99fa6d02fdcc568e0c99ddcedda3fd97d5e10a76..0482ad8ef17fb8327b0262f5eea1a2a6390fef43 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_object.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_object.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type AdditionalPropertiesObject struct {
-	Name string `json:"name,omitempty"`
+	Name *string `json:"name,omitempty"`
+
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesObject) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
+}
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesObject) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *AdditionalPropertiesObject) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *AdditionalPropertiesObject) SetName(v string) {
+	o.Name = &v
+}
+
+
+func (o AdditionalPropertiesObject) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_string.go b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_string.go
index 82fe0e4ed30ff1d10732d5b92ddc280dddcc08c5..561cd0819175c18981ffbcebe733f86f2a7823de 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_string.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_additional_properties_string.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type AdditionalPropertiesString struct {
-	Name string `json:"name,omitempty"`
+	Name *string `json:"name,omitempty"`
+
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *AdditionalPropertiesString) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
+}
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *AdditionalPropertiesString) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *AdditionalPropertiesString) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *AdditionalPropertiesString) SetName(v string) {
+	o.Name = &v
+}
+
+
+func (o AdditionalPropertiesString) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_animal.go b/samples/client/petstore/go-experimental/go-petstore/model_animal.go
index 39d0d2d1ec327a65c2a70a40dd0282c99103e655..897cac1f45dbaa3a2acb72aebc93442ce3e2faec 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_animal.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_animal.go
@@ -8,8 +8,97 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+	"errors"
+)
 
 type Animal struct {
-	ClassName string `json:"className"`
-	Color string `json:"color,omitempty"`
+	ClassName *string `json:"className,omitempty"`
+
+	Color *string `json:"color,omitempty"`
+
+}
+
+// GetClassName returns the ClassName field if non-nil, zero value otherwise.
+func (o *Animal) GetClassName() string {
+	if o == nil || o.ClassName == nil {
+		var ret string
+		return ret
+	}
+	return *o.ClassName
+}
+
+// GetClassNameOk returns a tuple with the ClassName field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Animal) GetClassNameOk() (string, bool) {
+	if o == nil || o.ClassName == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.ClassName, true
+}
+
+// HasClassName returns a boolean if a field has been set.
+func (o *Animal) HasClassName() bool {
+	if o != nil && o.ClassName != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetClassName gets a reference to the given string and assigns it to the ClassName field.
+func (o *Animal) SetClassName(v string) {
+	o.ClassName = &v
+}
+
+// GetColor returns the Color field if non-nil, zero value otherwise.
+func (o *Animal) GetColor() string {
+	if o == nil || o.Color == nil {
+		var ret string
+		return ret
+	}
+	return *o.Color
 }
+
+// GetColorOk returns a tuple with the Color field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Animal) GetColorOk() (string, bool) {
+	if o == nil || o.Color == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Color, true
+}
+
+// HasColor returns a boolean if a field has been set.
+func (o *Animal) HasColor() bool {
+	if o != nil && o.Color != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetColor gets a reference to the given string and assigns it to the Color field.
+func (o *Animal) SetColor(v string) {
+	o.Color = &v
+}
+
+
+func (o Animal) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.ClassName == nil {
+		return nil, errors.New("ClassName is required and not nullable, but was not set on Animal")
+	}
+	if o.ClassName != nil {
+		toSerialize["className"] = o.ClassName
+	}
+	if o.Color != nil {
+		toSerialize["color"] = o.Color
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_api_response.go b/samples/client/petstore/go-experimental/go-petstore/model_api_response.go
index 12732fa32c6b73ffc94710735cec6b0e6f0b7da3..009e99107212a97db1f6f4b873e7f9702c1e1c82 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_api_response.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_api_response.go
@@ -8,9 +8,131 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type ApiResponse struct {
-	Code int32 `json:"code,omitempty"`
-	Type string `json:"type,omitempty"`
-	Message string `json:"message,omitempty"`
+	Code *int32 `json:"code,omitempty"`
+
+	Type *string `json:"type,omitempty"`
+
+	Message *string `json:"message,omitempty"`
+
+}
+
+// GetCode returns the Code field if non-nil, zero value otherwise.
+func (o *ApiResponse) GetCode() int32 {
+	if o == nil || o.Code == nil {
+		var ret int32
+		return ret
+	}
+	return *o.Code
+}
+
+// GetCodeOk returns a tuple with the Code field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ApiResponse) GetCodeOk() (int32, bool) {
+	if o == nil || o.Code == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.Code, true
+}
+
+// HasCode returns a boolean if a field has been set.
+func (o *ApiResponse) HasCode() bool {
+	if o != nil && o.Code != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetCode gets a reference to the given int32 and assigns it to the Code field.
+func (o *ApiResponse) SetCode(v int32) {
+	o.Code = &v
+}
+
+// GetType returns the Type field if non-nil, zero value otherwise.
+func (o *ApiResponse) GetType() string {
+	if o == nil || o.Type == nil {
+		var ret string
+		return ret
+	}
+	return *o.Type
 }
+
+// GetTypeOk returns a tuple with the Type field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ApiResponse) GetTypeOk() (string, bool) {
+	if o == nil || o.Type == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Type, true
+}
+
+// HasType returns a boolean if a field has been set.
+func (o *ApiResponse) HasType() bool {
+	if o != nil && o.Type != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetType gets a reference to the given string and assigns it to the Type field.
+func (o *ApiResponse) SetType(v string) {
+	o.Type = &v
+}
+
+// GetMessage returns the Message field if non-nil, zero value otherwise.
+func (o *ApiResponse) GetMessage() string {
+	if o == nil || o.Message == nil {
+		var ret string
+		return ret
+	}
+	return *o.Message
+}
+
+// GetMessageOk returns a tuple with the Message field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ApiResponse) GetMessageOk() (string, bool) {
+	if o == nil || o.Message == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Message, true
+}
+
+// HasMessage returns a boolean if a field has been set.
+func (o *ApiResponse) HasMessage() bool {
+	if o != nil && o.Message != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMessage gets a reference to the given string and assigns it to the Message field.
+func (o *ApiResponse) SetMessage(v string) {
+	o.Message = &v
+}
+
+
+func (o ApiResponse) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Code != nil {
+		toSerialize["code"] = o.Code
+	}
+	if o.Type != nil {
+		toSerialize["type"] = o.Type
+	}
+	if o.Message != nil {
+		toSerialize["message"] = o.Message
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_array_of_array_of_number_only.go b/samples/client/petstore/go-experimental/go-petstore/model_array_of_array_of_number_only.go
index 8bf700c7eb30ee6c41bfaf1ef145dd58a598464a..aadebc92a45347962d75f71631246840a6723291 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_array_of_array_of_number_only.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_array_of_array_of_number_only.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type ArrayOfArrayOfNumberOnly struct {
-	ArrayArrayNumber [][]float32 `json:"ArrayArrayNumber,omitempty"`
+	ArrayArrayNumber *[][]float32 `json:"ArrayArrayNumber,omitempty"`
+
+}
+
+// GetArrayArrayNumber returns the ArrayArrayNumber field if non-nil, zero value otherwise.
+func (o *ArrayOfArrayOfNumberOnly) GetArrayArrayNumber() [][]float32 {
+	if o == nil || o.ArrayArrayNumber == nil {
+		var ret [][]float32
+		return ret
+	}
+	return *o.ArrayArrayNumber
+}
+
+// GetArrayArrayNumberOk returns a tuple with the ArrayArrayNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ArrayOfArrayOfNumberOnly) GetArrayArrayNumberOk() ([][]float32, bool) {
+	if o == nil || o.ArrayArrayNumber == nil {
+		var ret [][]float32
+		return ret, false
+	}
+	return *o.ArrayArrayNumber, true
+}
+
+// HasArrayArrayNumber returns a boolean if a field has been set.
+func (o *ArrayOfArrayOfNumberOnly) HasArrayArrayNumber() bool {
+	if o != nil && o.ArrayArrayNumber != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetArrayArrayNumber gets a reference to the given [][]float32 and assigns it to the ArrayArrayNumber field.
+func (o *ArrayOfArrayOfNumberOnly) SetArrayArrayNumber(v [][]float32) {
+	o.ArrayArrayNumber = &v
+}
+
+
+func (o ArrayOfArrayOfNumberOnly) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.ArrayArrayNumber != nil {
+		toSerialize["ArrayArrayNumber"] = o.ArrayArrayNumber
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_array_of_number_only.go b/samples/client/petstore/go-experimental/go-petstore/model_array_of_number_only.go
index ccb473355caa55dbe61fc67081b0fdaf245a2728..418a07d7d62315a8ee7c70ad29e1b2999dcdef7a 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_array_of_number_only.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_array_of_number_only.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type ArrayOfNumberOnly struct {
-	ArrayNumber []float32 `json:"ArrayNumber,omitempty"`
+	ArrayNumber *[]float32 `json:"ArrayNumber,omitempty"`
+
+}
+
+// GetArrayNumber returns the ArrayNumber field if non-nil, zero value otherwise.
+func (o *ArrayOfNumberOnly) GetArrayNumber() []float32 {
+	if o == nil || o.ArrayNumber == nil {
+		var ret []float32
+		return ret
+	}
+	return *o.ArrayNumber
+}
+
+// GetArrayNumberOk returns a tuple with the ArrayNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ArrayOfNumberOnly) GetArrayNumberOk() ([]float32, bool) {
+	if o == nil || o.ArrayNumber == nil {
+		var ret []float32
+		return ret, false
+	}
+	return *o.ArrayNumber, true
+}
+
+// HasArrayNumber returns a boolean if a field has been set.
+func (o *ArrayOfNumberOnly) HasArrayNumber() bool {
+	if o != nil && o.ArrayNumber != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetArrayNumber gets a reference to the given []float32 and assigns it to the ArrayNumber field.
+func (o *ArrayOfNumberOnly) SetArrayNumber(v []float32) {
+	o.ArrayNumber = &v
+}
+
+
+func (o ArrayOfNumberOnly) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.ArrayNumber != nil {
+		toSerialize["ArrayNumber"] = o.ArrayNumber
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_array_test_.go b/samples/client/petstore/go-experimental/go-petstore/model_array_test_.go
index f8819800934b780d78c1ebb1dfd572dc449e4c01..8fa143ded804bd6eb1f761c0a1a810c0a28fa516 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_array_test_.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_array_test_.go
@@ -8,9 +8,131 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type ArrayTest struct {
-	ArrayOfString []string `json:"array_of_string,omitempty"`
-	ArrayArrayOfInteger [][]int64 `json:"array_array_of_integer,omitempty"`
-	ArrayArrayOfModel [][]ReadOnlyFirst `json:"array_array_of_model,omitempty"`
+	ArrayOfString *[]string `json:"array_of_string,omitempty"`
+
+	ArrayArrayOfInteger *[][]int64 `json:"array_array_of_integer,omitempty"`
+
+	ArrayArrayOfModel *[][]ReadOnlyFirst `json:"array_array_of_model,omitempty"`
+
+}
+
+// GetArrayOfString returns the ArrayOfString field if non-nil, zero value otherwise.
+func (o *ArrayTest) GetArrayOfString() []string {
+	if o == nil || o.ArrayOfString == nil {
+		var ret []string
+		return ret
+	}
+	return *o.ArrayOfString
+}
+
+// GetArrayOfStringOk returns a tuple with the ArrayOfString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ArrayTest) GetArrayOfStringOk() ([]string, bool) {
+	if o == nil || o.ArrayOfString == nil {
+		var ret []string
+		return ret, false
+	}
+	return *o.ArrayOfString, true
+}
+
+// HasArrayOfString returns a boolean if a field has been set.
+func (o *ArrayTest) HasArrayOfString() bool {
+	if o != nil && o.ArrayOfString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetArrayOfString gets a reference to the given []string and assigns it to the ArrayOfString field.
+func (o *ArrayTest) SetArrayOfString(v []string) {
+	o.ArrayOfString = &v
+}
+
+// GetArrayArrayOfInteger returns the ArrayArrayOfInteger field if non-nil, zero value otherwise.
+func (o *ArrayTest) GetArrayArrayOfInteger() [][]int64 {
+	if o == nil || o.ArrayArrayOfInteger == nil {
+		var ret [][]int64
+		return ret
+	}
+	return *o.ArrayArrayOfInteger
 }
+
+// GetArrayArrayOfIntegerOk returns a tuple with the ArrayArrayOfInteger field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ArrayTest) GetArrayArrayOfIntegerOk() ([][]int64, bool) {
+	if o == nil || o.ArrayArrayOfInteger == nil {
+		var ret [][]int64
+		return ret, false
+	}
+	return *o.ArrayArrayOfInteger, true
+}
+
+// HasArrayArrayOfInteger returns a boolean if a field has been set.
+func (o *ArrayTest) HasArrayArrayOfInteger() bool {
+	if o != nil && o.ArrayArrayOfInteger != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetArrayArrayOfInteger gets a reference to the given [][]int64 and assigns it to the ArrayArrayOfInteger field.
+func (o *ArrayTest) SetArrayArrayOfInteger(v [][]int64) {
+	o.ArrayArrayOfInteger = &v
+}
+
+// GetArrayArrayOfModel returns the ArrayArrayOfModel field if non-nil, zero value otherwise.
+func (o *ArrayTest) GetArrayArrayOfModel() [][]ReadOnlyFirst {
+	if o == nil || o.ArrayArrayOfModel == nil {
+		var ret [][]ReadOnlyFirst
+		return ret
+	}
+	return *o.ArrayArrayOfModel
+}
+
+// GetArrayArrayOfModelOk returns a tuple with the ArrayArrayOfModel field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ArrayTest) GetArrayArrayOfModelOk() ([][]ReadOnlyFirst, bool) {
+	if o == nil || o.ArrayArrayOfModel == nil {
+		var ret [][]ReadOnlyFirst
+		return ret, false
+	}
+	return *o.ArrayArrayOfModel, true
+}
+
+// HasArrayArrayOfModel returns a boolean if a field has been set.
+func (o *ArrayTest) HasArrayArrayOfModel() bool {
+	if o != nil && o.ArrayArrayOfModel != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetArrayArrayOfModel gets a reference to the given [][]ReadOnlyFirst and assigns it to the ArrayArrayOfModel field.
+func (o *ArrayTest) SetArrayArrayOfModel(v [][]ReadOnlyFirst) {
+	o.ArrayArrayOfModel = &v
+}
+
+
+func (o ArrayTest) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.ArrayOfString != nil {
+		toSerialize["array_of_string"] = o.ArrayOfString
+	}
+	if o.ArrayArrayOfInteger != nil {
+		toSerialize["array_array_of_integer"] = o.ArrayArrayOfInteger
+	}
+	if o.ArrayArrayOfModel != nil {
+		toSerialize["array_array_of_model"] = o.ArrayArrayOfModel
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_capitalization.go b/samples/client/petstore/go-experimental/go-petstore/model_capitalization.go
index 8284ba9c7658df9d3d0a6f138393ecaed8e154a3..107dd7932e1cb8723b7af9a56ac65cec32f0d533 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_capitalization.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_capitalization.go
@@ -8,13 +8,246 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type Capitalization struct {
-	SmallCamel string `json:"smallCamel,omitempty"`
-	CapitalCamel string `json:"CapitalCamel,omitempty"`
-	SmallSnake string `json:"small_Snake,omitempty"`
-	CapitalSnake string `json:"Capital_Snake,omitempty"`
-	SCAETHFlowPoints string `json:"SCA_ETH_Flow_Points,omitempty"`
+	SmallCamel *string `json:"smallCamel,omitempty"`
+
+	CapitalCamel *string `json:"CapitalCamel,omitempty"`
+
+	SmallSnake *string `json:"small_Snake,omitempty"`
+
+	CapitalSnake *string `json:"Capital_Snake,omitempty"`
+
+	SCAETHFlowPoints *string `json:"SCA_ETH_Flow_Points,omitempty"`
+
 	// Name of the pet 
-	ATT_NAME string `json:"ATT_NAME,omitempty"`
+	ATT_NAME *string `json:"ATT_NAME,omitempty"`
+
+}
+
+// GetSmallCamel returns the SmallCamel field if non-nil, zero value otherwise.
+func (o *Capitalization) GetSmallCamel() string {
+	if o == nil || o.SmallCamel == nil {
+		var ret string
+		return ret
+	}
+	return *o.SmallCamel
+}
+
+// GetSmallCamelOk returns a tuple with the SmallCamel field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Capitalization) GetSmallCamelOk() (string, bool) {
+	if o == nil || o.SmallCamel == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.SmallCamel, true
+}
+
+// HasSmallCamel returns a boolean if a field has been set.
+func (o *Capitalization) HasSmallCamel() bool {
+	if o != nil && o.SmallCamel != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetSmallCamel gets a reference to the given string and assigns it to the SmallCamel field.
+func (o *Capitalization) SetSmallCamel(v string) {
+	o.SmallCamel = &v
+}
+
+// GetCapitalCamel returns the CapitalCamel field if non-nil, zero value otherwise.
+func (o *Capitalization) GetCapitalCamel() string {
+	if o == nil || o.CapitalCamel == nil {
+		var ret string
+		return ret
+	}
+	return *o.CapitalCamel
+}
+
+// GetCapitalCamelOk returns a tuple with the CapitalCamel field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Capitalization) GetCapitalCamelOk() (string, bool) {
+	if o == nil || o.CapitalCamel == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.CapitalCamel, true
+}
+
+// HasCapitalCamel returns a boolean if a field has been set.
+func (o *Capitalization) HasCapitalCamel() bool {
+	if o != nil && o.CapitalCamel != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetCapitalCamel gets a reference to the given string and assigns it to the CapitalCamel field.
+func (o *Capitalization) SetCapitalCamel(v string) {
+	o.CapitalCamel = &v
+}
+
+// GetSmallSnake returns the SmallSnake field if non-nil, zero value otherwise.
+func (o *Capitalization) GetSmallSnake() string {
+	if o == nil || o.SmallSnake == nil {
+		var ret string
+		return ret
+	}
+	return *o.SmallSnake
+}
+
+// GetSmallSnakeOk returns a tuple with the SmallSnake field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Capitalization) GetSmallSnakeOk() (string, bool) {
+	if o == nil || o.SmallSnake == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.SmallSnake, true
+}
+
+// HasSmallSnake returns a boolean if a field has been set.
+func (o *Capitalization) HasSmallSnake() bool {
+	if o != nil && o.SmallSnake != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetSmallSnake gets a reference to the given string and assigns it to the SmallSnake field.
+func (o *Capitalization) SetSmallSnake(v string) {
+	o.SmallSnake = &v
 }
+
+// GetCapitalSnake returns the CapitalSnake field if non-nil, zero value otherwise.
+func (o *Capitalization) GetCapitalSnake() string {
+	if o == nil || o.CapitalSnake == nil {
+		var ret string
+		return ret
+	}
+	return *o.CapitalSnake
+}
+
+// GetCapitalSnakeOk returns a tuple with the CapitalSnake field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Capitalization) GetCapitalSnakeOk() (string, bool) {
+	if o == nil || o.CapitalSnake == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.CapitalSnake, true
+}
+
+// HasCapitalSnake returns a boolean if a field has been set.
+func (o *Capitalization) HasCapitalSnake() bool {
+	if o != nil && o.CapitalSnake != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetCapitalSnake gets a reference to the given string and assigns it to the CapitalSnake field.
+func (o *Capitalization) SetCapitalSnake(v string) {
+	o.CapitalSnake = &v
+}
+
+// GetSCAETHFlowPoints returns the SCAETHFlowPoints field if non-nil, zero value otherwise.
+func (o *Capitalization) GetSCAETHFlowPoints() string {
+	if o == nil || o.SCAETHFlowPoints == nil {
+		var ret string
+		return ret
+	}
+	return *o.SCAETHFlowPoints
+}
+
+// GetSCAETHFlowPointsOk returns a tuple with the SCAETHFlowPoints field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Capitalization) GetSCAETHFlowPointsOk() (string, bool) {
+	if o == nil || o.SCAETHFlowPoints == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.SCAETHFlowPoints, true
+}
+
+// HasSCAETHFlowPoints returns a boolean if a field has been set.
+func (o *Capitalization) HasSCAETHFlowPoints() bool {
+	if o != nil && o.SCAETHFlowPoints != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetSCAETHFlowPoints gets a reference to the given string and assigns it to the SCAETHFlowPoints field.
+func (o *Capitalization) SetSCAETHFlowPoints(v string) {
+	o.SCAETHFlowPoints = &v
+}
+
+// GetATT_NAME returns the ATT_NAME field if non-nil, zero value otherwise.
+func (o *Capitalization) GetATT_NAME() string {
+	if o == nil || o.ATT_NAME == nil {
+		var ret string
+		return ret
+	}
+	return *o.ATT_NAME
+}
+
+// GetATT_NAMEOk returns a tuple with the ATT_NAME field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Capitalization) GetATT_NAMEOk() (string, bool) {
+	if o == nil || o.ATT_NAME == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.ATT_NAME, true
+}
+
+// HasATT_NAME returns a boolean if a field has been set.
+func (o *Capitalization) HasATT_NAME() bool {
+	if o != nil && o.ATT_NAME != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetATT_NAME gets a reference to the given string and assigns it to the ATT_NAME field.
+func (o *Capitalization) SetATT_NAME(v string) {
+	o.ATT_NAME = &v
+}
+
+
+func (o Capitalization) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.SmallCamel != nil {
+		toSerialize["smallCamel"] = o.SmallCamel
+	}
+	if o.CapitalCamel != nil {
+		toSerialize["CapitalCamel"] = o.CapitalCamel
+	}
+	if o.SmallSnake != nil {
+		toSerialize["small_Snake"] = o.SmallSnake
+	}
+	if o.CapitalSnake != nil {
+		toSerialize["Capital_Snake"] = o.CapitalSnake
+	}
+	if o.SCAETHFlowPoints != nil {
+		toSerialize["SCA_ETH_Flow_Points"] = o.SCAETHFlowPoints
+	}
+	if o.ATT_NAME != nil {
+		toSerialize["ATT_NAME"] = o.ATT_NAME
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_cat.go b/samples/client/petstore/go-experimental/go-petstore/model_cat.go
index 58b3deeb938d4d3f63b1aac2570509b234b21511..8efbf58fd1e7630de5e25163460b5b1073c76e63 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_cat.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_cat.go
@@ -8,9 +8,135 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+	"errors"
+)
 
 type Cat struct {
-	ClassName string `json:"className"`
-	Color string `json:"color,omitempty"`
-	Declawed bool `json:"declawed,omitempty"`
+	ClassName *string `json:"className,omitempty"`
+
+	Color *string `json:"color,omitempty"`
+
+	Declawed *bool `json:"declawed,omitempty"`
+
+}
+
+// GetClassName returns the ClassName field if non-nil, zero value otherwise.
+func (o *Cat) GetClassName() string {
+	if o == nil || o.ClassName == nil {
+		var ret string
+		return ret
+	}
+	return *o.ClassName
+}
+
+// GetClassNameOk returns a tuple with the ClassName field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Cat) GetClassNameOk() (string, bool) {
+	if o == nil || o.ClassName == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.ClassName, true
+}
+
+// HasClassName returns a boolean if a field has been set.
+func (o *Cat) HasClassName() bool {
+	if o != nil && o.ClassName != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetClassName gets a reference to the given string and assigns it to the ClassName field.
+func (o *Cat) SetClassName(v string) {
+	o.ClassName = &v
+}
+
+// GetColor returns the Color field if non-nil, zero value otherwise.
+func (o *Cat) GetColor() string {
+	if o == nil || o.Color == nil {
+		var ret string
+		return ret
+	}
+	return *o.Color
 }
+
+// GetColorOk returns a tuple with the Color field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Cat) GetColorOk() (string, bool) {
+	if o == nil || o.Color == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Color, true
+}
+
+// HasColor returns a boolean if a field has been set.
+func (o *Cat) HasColor() bool {
+	if o != nil && o.Color != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetColor gets a reference to the given string and assigns it to the Color field.
+func (o *Cat) SetColor(v string) {
+	o.Color = &v
+}
+
+// GetDeclawed returns the Declawed field if non-nil, zero value otherwise.
+func (o *Cat) GetDeclawed() bool {
+	if o == nil || o.Declawed == nil {
+		var ret bool
+		return ret
+	}
+	return *o.Declawed
+}
+
+// GetDeclawedOk returns a tuple with the Declawed field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Cat) GetDeclawedOk() (bool, bool) {
+	if o == nil || o.Declawed == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.Declawed, true
+}
+
+// HasDeclawed returns a boolean if a field has been set.
+func (o *Cat) HasDeclawed() bool {
+	if o != nil && o.Declawed != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetDeclawed gets a reference to the given bool and assigns it to the Declawed field.
+func (o *Cat) SetDeclawed(v bool) {
+	o.Declawed = &v
+}
+
+
+func (o Cat) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.ClassName == nil {
+		return nil, errors.New("ClassName is required and not nullable, but was not set on Cat")
+	}
+	if o.ClassName != nil {
+		toSerialize["className"] = o.ClassName
+	}
+	if o.Color != nil {
+		toSerialize["color"] = o.Color
+	}
+	if o.Declawed != nil {
+		toSerialize["declawed"] = o.Declawed
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_cat_all_of.go b/samples/client/petstore/go-experimental/go-petstore/model_cat_all_of.go
index 3c1d802bd411abc985aafc85acd9af73e48caeab..aaf2c8badb5a9179cec481e0fe6ee98592a1e4ec 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_cat_all_of.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_cat_all_of.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type CatAllOf struct {
-	Declawed bool `json:"declawed,omitempty"`
+	Declawed *bool `json:"declawed,omitempty"`
+
+}
+
+// GetDeclawed returns the Declawed field if non-nil, zero value otherwise.
+func (o *CatAllOf) GetDeclawed() bool {
+	if o == nil || o.Declawed == nil {
+		var ret bool
+		return ret
+	}
+	return *o.Declawed
+}
+
+// GetDeclawedOk returns a tuple with the Declawed field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *CatAllOf) GetDeclawedOk() (bool, bool) {
+	if o == nil || o.Declawed == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.Declawed, true
+}
+
+// HasDeclawed returns a boolean if a field has been set.
+func (o *CatAllOf) HasDeclawed() bool {
+	if o != nil && o.Declawed != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetDeclawed gets a reference to the given bool and assigns it to the Declawed field.
+func (o *CatAllOf) SetDeclawed(v bool) {
+	o.Declawed = &v
+}
+
+
+func (o CatAllOf) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Declawed != nil {
+		toSerialize["declawed"] = o.Declawed
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_category.go b/samples/client/petstore/go-experimental/go-petstore/model_category.go
index 2f971417ac10e15bb08dd8191f6f1d77aa698c12..c55d4bd6e99df4be99ac0bd8ebc724aa6e6f6932 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_category.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_category.go
@@ -8,8 +8,97 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+	"errors"
+)
 
 type Category struct {
-	Id int64 `json:"id,omitempty"`
-	Name string `json:"name"`
+	Id *int64 `json:"id,omitempty"`
+
+	Name *string `json:"name,omitempty"`
+
+}
+
+// GetId returns the Id field if non-nil, zero value otherwise.
+func (o *Category) GetId() int64 {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret
+	}
+	return *o.Id
+}
+
+// GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Category) GetIdOk() (int64, bool) {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret, false
+	}
+	return *o.Id, true
+}
+
+// HasId returns a boolean if a field has been set.
+func (o *Category) HasId() bool {
+	if o != nil && o.Id != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetId gets a reference to the given int64 and assigns it to the Id field.
+func (o *Category) SetId(v int64) {
+	o.Id = &v
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *Category) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
 }
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Category) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *Category) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *Category) SetName(v string) {
+	o.Name = &v
+}
+
+
+func (o Category) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Id != nil {
+		toSerialize["id"] = o.Id
+	}
+	if o.Name == nil {
+		return nil, errors.New("Name is required and not nullable, but was not set on Category")
+	}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_class_model.go b/samples/client/petstore/go-experimental/go-petstore/model_class_model.go
index 09c7e891968aaa28a18f5b743120b46f59c8728d..0dcaa2643114a1a01fad7651691128a438942452 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_class_model.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_class_model.go
@@ -8,8 +8,56 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 // Model for testing model with \"_class\" property
 type ClassModel struct {
-	Class string `json:"_class,omitempty"`
+	Class *string `json:"_class,omitempty"`
+
+}
+
+// GetClass returns the Class field if non-nil, zero value otherwise.
+func (o *ClassModel) GetClass() string {
+	if o == nil || o.Class == nil {
+		var ret string
+		return ret
+	}
+	return *o.Class
+}
+
+// GetClassOk returns a tuple with the Class field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ClassModel) GetClassOk() (string, bool) {
+	if o == nil || o.Class == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Class, true
+}
+
+// HasClass returns a boolean if a field has been set.
+func (o *ClassModel) HasClass() bool {
+	if o != nil && o.Class != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetClass gets a reference to the given string and assigns it to the Class field.
+func (o *ClassModel) SetClass(v string) {
+	o.Class = &v
+}
+
+
+func (o ClassModel) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Class != nil {
+		toSerialize["_class"] = o.Class
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_client.go b/samples/client/petstore/go-experimental/go-petstore/model_client.go
index 3aa61112c4dad72f012a2f0450eaf643ab749c23..72ebd543000beaa984c8d5d62274b5b6039cbded 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_client.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_client.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type Client struct {
-	Client string `json:"client,omitempty"`
+	Client *string `json:"client,omitempty"`
+
+}
+
+// GetClient returns the Client field if non-nil, zero value otherwise.
+func (o *Client) GetClient() string {
+	if o == nil || o.Client == nil {
+		var ret string
+		return ret
+	}
+	return *o.Client
+}
+
+// GetClientOk returns a tuple with the Client field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Client) GetClientOk() (string, bool) {
+	if o == nil || o.Client == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Client, true
+}
+
+// HasClient returns a boolean if a field has been set.
+func (o *Client) HasClient() bool {
+	if o != nil && o.Client != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetClient gets a reference to the given string and assigns it to the Client field.
+func (o *Client) SetClient(v string) {
+	o.Client = &v
+}
+
+
+func (o Client) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Client != nil {
+		toSerialize["client"] = o.Client
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_dog.go b/samples/client/petstore/go-experimental/go-petstore/model_dog.go
index 3f791ca1947de35332d6ccb4c3f9b8fffc7bc02d..dd9c4e1d67db6a815663529a565b0a2a460eae1d 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_dog.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_dog.go
@@ -8,9 +8,135 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+	"errors"
+)
 
 type Dog struct {
-	ClassName string `json:"className"`
-	Color string `json:"color,omitempty"`
-	Breed string `json:"breed,omitempty"`
+	ClassName *string `json:"className,omitempty"`
+
+	Color *string `json:"color,omitempty"`
+
+	Breed *string `json:"breed,omitempty"`
+
+}
+
+// GetClassName returns the ClassName field if non-nil, zero value otherwise.
+func (o *Dog) GetClassName() string {
+	if o == nil || o.ClassName == nil {
+		var ret string
+		return ret
+	}
+	return *o.ClassName
+}
+
+// GetClassNameOk returns a tuple with the ClassName field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Dog) GetClassNameOk() (string, bool) {
+	if o == nil || o.ClassName == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.ClassName, true
+}
+
+// HasClassName returns a boolean if a field has been set.
+func (o *Dog) HasClassName() bool {
+	if o != nil && o.ClassName != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetClassName gets a reference to the given string and assigns it to the ClassName field.
+func (o *Dog) SetClassName(v string) {
+	o.ClassName = &v
+}
+
+// GetColor returns the Color field if non-nil, zero value otherwise.
+func (o *Dog) GetColor() string {
+	if o == nil || o.Color == nil {
+		var ret string
+		return ret
+	}
+	return *o.Color
 }
+
+// GetColorOk returns a tuple with the Color field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Dog) GetColorOk() (string, bool) {
+	if o == nil || o.Color == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Color, true
+}
+
+// HasColor returns a boolean if a field has been set.
+func (o *Dog) HasColor() bool {
+	if o != nil && o.Color != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetColor gets a reference to the given string and assigns it to the Color field.
+func (o *Dog) SetColor(v string) {
+	o.Color = &v
+}
+
+// GetBreed returns the Breed field if non-nil, zero value otherwise.
+func (o *Dog) GetBreed() string {
+	if o == nil || o.Breed == nil {
+		var ret string
+		return ret
+	}
+	return *o.Breed
+}
+
+// GetBreedOk returns a tuple with the Breed field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Dog) GetBreedOk() (string, bool) {
+	if o == nil || o.Breed == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Breed, true
+}
+
+// HasBreed returns a boolean if a field has been set.
+func (o *Dog) HasBreed() bool {
+	if o != nil && o.Breed != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetBreed gets a reference to the given string and assigns it to the Breed field.
+func (o *Dog) SetBreed(v string) {
+	o.Breed = &v
+}
+
+
+func (o Dog) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.ClassName == nil {
+		return nil, errors.New("ClassName is required and not nullable, but was not set on Dog")
+	}
+	if o.ClassName != nil {
+		toSerialize["className"] = o.ClassName
+	}
+	if o.Color != nil {
+		toSerialize["color"] = o.Color
+	}
+	if o.Breed != nil {
+		toSerialize["breed"] = o.Breed
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_dog_all_of.go b/samples/client/petstore/go-experimental/go-petstore/model_dog_all_of.go
index a0db0aba4b535b4724a16aa56d057e14cd2cb2a4..9dd6d964f025b1cdcef779c3d6ccb5f013296a5c 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_dog_all_of.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_dog_all_of.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type DogAllOf struct {
-	Breed string `json:"breed,omitempty"`
+	Breed *string `json:"breed,omitempty"`
+
+}
+
+// GetBreed returns the Breed field if non-nil, zero value otherwise.
+func (o *DogAllOf) GetBreed() string {
+	if o == nil || o.Breed == nil {
+		var ret string
+		return ret
+	}
+	return *o.Breed
+}
+
+// GetBreedOk returns a tuple with the Breed field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *DogAllOf) GetBreedOk() (string, bool) {
+	if o == nil || o.Breed == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Breed, true
+}
+
+// HasBreed returns a boolean if a field has been set.
+func (o *DogAllOf) HasBreed() bool {
+	if o != nil && o.Breed != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetBreed gets a reference to the given string and assigns it to the Breed field.
+func (o *DogAllOf) SetBreed(v string) {
+	o.Breed = &v
+}
+
+
+func (o DogAllOf) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Breed != nil {
+		toSerialize["breed"] = o.Breed
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_enum_arrays.go b/samples/client/petstore/go-experimental/go-petstore/model_enum_arrays.go
index ab4dce92ebbc46d8aa3a1b41f6885e7b6f2ac068..b52471416a8e4fc739ce121f7e9acd273d85dcdc 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_enum_arrays.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_enum_arrays.go
@@ -8,8 +8,93 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type EnumArrays struct {
-	JustSymbol string `json:"just_symbol,omitempty"`
-	ArrayEnum []string `json:"array_enum,omitempty"`
+	JustSymbol *string `json:"just_symbol,omitempty"`
+
+	ArrayEnum *[]string `json:"array_enum,omitempty"`
+
+}
+
+// GetJustSymbol returns the JustSymbol field if non-nil, zero value otherwise.
+func (o *EnumArrays) GetJustSymbol() string {
+	if o == nil || o.JustSymbol == nil {
+		var ret string
+		return ret
+	}
+	return *o.JustSymbol
+}
+
+// GetJustSymbolOk returns a tuple with the JustSymbol field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *EnumArrays) GetJustSymbolOk() (string, bool) {
+	if o == nil || o.JustSymbol == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.JustSymbol, true
+}
+
+// HasJustSymbol returns a boolean if a field has been set.
+func (o *EnumArrays) HasJustSymbol() bool {
+	if o != nil && o.JustSymbol != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetJustSymbol gets a reference to the given string and assigns it to the JustSymbol field.
+func (o *EnumArrays) SetJustSymbol(v string) {
+	o.JustSymbol = &v
+}
+
+// GetArrayEnum returns the ArrayEnum field if non-nil, zero value otherwise.
+func (o *EnumArrays) GetArrayEnum() []string {
+	if o == nil || o.ArrayEnum == nil {
+		var ret []string
+		return ret
+	}
+	return *o.ArrayEnum
 }
+
+// GetArrayEnumOk returns a tuple with the ArrayEnum field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *EnumArrays) GetArrayEnumOk() ([]string, bool) {
+	if o == nil || o.ArrayEnum == nil {
+		var ret []string
+		return ret, false
+	}
+	return *o.ArrayEnum, true
+}
+
+// HasArrayEnum returns a boolean if a field has been set.
+func (o *EnumArrays) HasArrayEnum() bool {
+	if o != nil && o.ArrayEnum != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetArrayEnum gets a reference to the given []string and assigns it to the ArrayEnum field.
+func (o *EnumArrays) SetArrayEnum(v []string) {
+	o.ArrayEnum = &v
+}
+
+
+func (o EnumArrays) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.JustSymbol != nil {
+		toSerialize["just_symbol"] = o.JustSymbol
+	}
+	if o.ArrayEnum != nil {
+		toSerialize["array_enum"] = o.ArrayEnum
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_enum_class.go b/samples/client/petstore/go-experimental/go-petstore/model_enum_class.go
index 534ce432881734fdd09f2c66554030111adef9ec..b52d1095424bb58a40e3f6d61a5fc4141c69f194 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_enum_class.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_enum_class.go
@@ -15,4 +15,5 @@ const (
 	ABC EnumClass = "_abc"
 	EFG EnumClass = "-efg"
 	XYZ EnumClass = "(xyz)"
-)
\ No newline at end of file
+)
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_enum_test_.go b/samples/client/petstore/go-experimental/go-petstore/model_enum_test_.go
index f85f31501a019b9685228b6ef761896793a589b7..1e9f8a449e97997772dd0859c63cee3c8a05fe37 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_enum_test_.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_enum_test_.go
@@ -8,11 +8,211 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+	"errors"
+)
 
 type EnumTest struct {
-	EnumString string `json:"enum_string,omitempty"`
-	EnumStringRequired string `json:"enum_string_required"`
-	EnumInteger int32 `json:"enum_integer,omitempty"`
-	EnumNumber float64 `json:"enum_number,omitempty"`
-	OuterEnum OuterEnum `json:"outerEnum,omitempty"`
+	EnumString *string `json:"enum_string,omitempty"`
+
+	EnumStringRequired *string `json:"enum_string_required,omitempty"`
+
+	EnumInteger *int32 `json:"enum_integer,omitempty"`
+
+	EnumNumber *float64 `json:"enum_number,omitempty"`
+
+	OuterEnum *OuterEnum `json:"outerEnum,omitempty"`
+
+}
+
+// GetEnumString returns the EnumString field if non-nil, zero value otherwise.
+func (o *EnumTest) GetEnumString() string {
+	if o == nil || o.EnumString == nil {
+		var ret string
+		return ret
+	}
+	return *o.EnumString
+}
+
+// GetEnumStringOk returns a tuple with the EnumString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *EnumTest) GetEnumStringOk() (string, bool) {
+	if o == nil || o.EnumString == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.EnumString, true
+}
+
+// HasEnumString returns a boolean if a field has been set.
+func (o *EnumTest) HasEnumString() bool {
+	if o != nil && o.EnumString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetEnumString gets a reference to the given string and assigns it to the EnumString field.
+func (o *EnumTest) SetEnumString(v string) {
+	o.EnumString = &v
 }
+
+// GetEnumStringRequired returns the EnumStringRequired field if non-nil, zero value otherwise.
+func (o *EnumTest) GetEnumStringRequired() string {
+	if o == nil || o.EnumStringRequired == nil {
+		var ret string
+		return ret
+	}
+	return *o.EnumStringRequired
+}
+
+// GetEnumStringRequiredOk returns a tuple with the EnumStringRequired field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *EnumTest) GetEnumStringRequiredOk() (string, bool) {
+	if o == nil || o.EnumStringRequired == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.EnumStringRequired, true
+}
+
+// HasEnumStringRequired returns a boolean if a field has been set.
+func (o *EnumTest) HasEnumStringRequired() bool {
+	if o != nil && o.EnumStringRequired != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetEnumStringRequired gets a reference to the given string and assigns it to the EnumStringRequired field.
+func (o *EnumTest) SetEnumStringRequired(v string) {
+	o.EnumStringRequired = &v
+}
+
+// GetEnumInteger returns the EnumInteger field if non-nil, zero value otherwise.
+func (o *EnumTest) GetEnumInteger() int32 {
+	if o == nil || o.EnumInteger == nil {
+		var ret int32
+		return ret
+	}
+	return *o.EnumInteger
+}
+
+// GetEnumIntegerOk returns a tuple with the EnumInteger field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *EnumTest) GetEnumIntegerOk() (int32, bool) {
+	if o == nil || o.EnumInteger == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.EnumInteger, true
+}
+
+// HasEnumInteger returns a boolean if a field has been set.
+func (o *EnumTest) HasEnumInteger() bool {
+	if o != nil && o.EnumInteger != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetEnumInteger gets a reference to the given int32 and assigns it to the EnumInteger field.
+func (o *EnumTest) SetEnumInteger(v int32) {
+	o.EnumInteger = &v
+}
+
+// GetEnumNumber returns the EnumNumber field if non-nil, zero value otherwise.
+func (o *EnumTest) GetEnumNumber() float64 {
+	if o == nil || o.EnumNumber == nil {
+		var ret float64
+		return ret
+	}
+	return *o.EnumNumber
+}
+
+// GetEnumNumberOk returns a tuple with the EnumNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *EnumTest) GetEnumNumberOk() (float64, bool) {
+	if o == nil || o.EnumNumber == nil {
+		var ret float64
+		return ret, false
+	}
+	return *o.EnumNumber, true
+}
+
+// HasEnumNumber returns a boolean if a field has been set.
+func (o *EnumTest) HasEnumNumber() bool {
+	if o != nil && o.EnumNumber != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetEnumNumber gets a reference to the given float64 and assigns it to the EnumNumber field.
+func (o *EnumTest) SetEnumNumber(v float64) {
+	o.EnumNumber = &v
+}
+
+// GetOuterEnum returns the OuterEnum field if non-nil, zero value otherwise.
+func (o *EnumTest) GetOuterEnum() OuterEnum {
+	if o == nil || o.OuterEnum == nil {
+		var ret OuterEnum
+		return ret
+	}
+	return *o.OuterEnum
+}
+
+// GetOuterEnumOk returns a tuple with the OuterEnum field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *EnumTest) GetOuterEnumOk() (OuterEnum, bool) {
+	if o == nil || o.OuterEnum == nil {
+		var ret OuterEnum
+		return ret, false
+	}
+	return *o.OuterEnum, true
+}
+
+// HasOuterEnum returns a boolean if a field has been set.
+func (o *EnumTest) HasOuterEnum() bool {
+	if o != nil && o.OuterEnum != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetOuterEnum gets a reference to the given OuterEnum and assigns it to the OuterEnum field.
+func (o *EnumTest) SetOuterEnum(v OuterEnum) {
+	o.OuterEnum = &v
+}
+
+
+func (o EnumTest) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.EnumString != nil {
+		toSerialize["enum_string"] = o.EnumString
+	}
+	if o.EnumStringRequired == nil {
+		return nil, errors.New("EnumStringRequired is required and not nullable, but was not set on EnumTest")
+	}
+	if o.EnumStringRequired != nil {
+		toSerialize["enum_string_required"] = o.EnumStringRequired
+	}
+	if o.EnumInteger != nil {
+		toSerialize["enum_integer"] = o.EnumInteger
+	}
+	if o.EnumNumber != nil {
+		toSerialize["enum_number"] = o.EnumNumber
+	}
+	if o.OuterEnum != nil {
+		toSerialize["outerEnum"] = o.OuterEnum
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_file.go b/samples/client/petstore/go-experimental/go-petstore/model_file.go
index 2782ccc9a2aa285cc3e7f15d274e78247e66926f..4968739ef45b42d3fcd1f3df485059c732661fdd 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_file.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_file.go
@@ -8,9 +8,57 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 // Must be named `File` for test.
 type File struct {
 	// Test capitalization
-	SourceURI string `json:"sourceURI,omitempty"`
+	SourceURI *string `json:"sourceURI,omitempty"`
+
+}
+
+// GetSourceURI returns the SourceURI field if non-nil, zero value otherwise.
+func (o *File) GetSourceURI() string {
+	if o == nil || o.SourceURI == nil {
+		var ret string
+		return ret
+	}
+	return *o.SourceURI
+}
+
+// GetSourceURIOk returns a tuple with the SourceURI field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *File) GetSourceURIOk() (string, bool) {
+	if o == nil || o.SourceURI == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.SourceURI, true
+}
+
+// HasSourceURI returns a boolean if a field has been set.
+func (o *File) HasSourceURI() bool {
+	if o != nil && o.SourceURI != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetSourceURI gets a reference to the given string and assigns it to the SourceURI field.
+func (o *File) SetSourceURI(v string) {
+	o.SourceURI = &v
+}
+
+
+func (o File) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.SourceURI != nil {
+		toSerialize["sourceURI"] = o.SourceURI
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_file_schema_test_class.go b/samples/client/petstore/go-experimental/go-petstore/model_file_schema_test_class.go
index 487f766c64926d0136f5b317d28ddc738ea4b18a..16cd67f29d317455037aa58007ef77834ce517ff 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_file_schema_test_class.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_file_schema_test_class.go
@@ -8,8 +8,93 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type FileSchemaTestClass struct {
-	File File `json:"file,omitempty"`
-	Files []File `json:"files,omitempty"`
+	File *File `json:"file,omitempty"`
+
+	Files *[]File `json:"files,omitempty"`
+
+}
+
+// GetFile returns the File field if non-nil, zero value otherwise.
+func (o *FileSchemaTestClass) GetFile() File {
+	if o == nil || o.File == nil {
+		var ret File
+		return ret
+	}
+	return *o.File
+}
+
+// GetFileOk returns a tuple with the File field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FileSchemaTestClass) GetFileOk() (File, bool) {
+	if o == nil || o.File == nil {
+		var ret File
+		return ret, false
+	}
+	return *o.File, true
+}
+
+// HasFile returns a boolean if a field has been set.
+func (o *FileSchemaTestClass) HasFile() bool {
+	if o != nil && o.File != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetFile gets a reference to the given File and assigns it to the File field.
+func (o *FileSchemaTestClass) SetFile(v File) {
+	o.File = &v
+}
+
+// GetFiles returns the Files field if non-nil, zero value otherwise.
+func (o *FileSchemaTestClass) GetFiles() []File {
+	if o == nil || o.Files == nil {
+		var ret []File
+		return ret
+	}
+	return *o.Files
 }
+
+// GetFilesOk returns a tuple with the Files field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FileSchemaTestClass) GetFilesOk() ([]File, bool) {
+	if o == nil || o.Files == nil {
+		var ret []File
+		return ret, false
+	}
+	return *o.Files, true
+}
+
+// HasFiles returns a boolean if a field has been set.
+func (o *FileSchemaTestClass) HasFiles() bool {
+	if o != nil && o.Files != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetFiles gets a reference to the given []File and assigns it to the Files field.
+func (o *FileSchemaTestClass) SetFiles(v []File) {
+	o.Files = &v
+}
+
+
+func (o FileSchemaTestClass) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.File != nil {
+		toSerialize["file"] = o.File
+	}
+	if o.Files != nil {
+		toSerialize["files"] = o.Files
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_format_test_.go b/samples/client/petstore/go-experimental/go-petstore/model_format_test_.go
index d723bdfee39e2b92dde0cef037542ba205f3f95d..5532e92477f38ac73f1b222a8de5a53babc56724 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_format_test_.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_format_test_.go
@@ -11,20 +11,523 @@ package petstore
 import (
 	"os"
 	"time"
+	"encoding/json"
+	"errors"
 )
 
 type FormatTest struct {
-	Integer int32 `json:"integer,omitempty"`
-	Int32 int32 `json:"int32,omitempty"`
-	Int64 int64 `json:"int64,omitempty"`
-	Number float32 `json:"number"`
-	Float float32 `json:"float,omitempty"`
-	Double float64 `json:"double,omitempty"`
-	String string `json:"string,omitempty"`
-	Byte string `json:"byte"`
-	Binary *os.File `json:"binary,omitempty"`
-	Date string `json:"date"`
-	DateTime time.Time `json:"dateTime,omitempty"`
-	Uuid string `json:"uuid,omitempty"`
-	Password string `json:"password"`
+	Integer *int32 `json:"integer,omitempty"`
+
+	Int32 *int32 `json:"int32,omitempty"`
+
+	Int64 *int64 `json:"int64,omitempty"`
+
+	Number *float32 `json:"number,omitempty"`
+
+	Float *float32 `json:"float,omitempty"`
+
+	Double *float64 `json:"double,omitempty"`
+
+	String *string `json:"string,omitempty"`
+
+	Byte *string `json:"byte,omitempty"`
+
+	Binary **os.File `json:"binary,omitempty"`
+
+	Date *string `json:"date,omitempty"`
+
+	DateTime *time.Time `json:"dateTime,omitempty"`
+
+	Uuid *string `json:"uuid,omitempty"`
+
+	Password *string `json:"password,omitempty"`
+
+}
+
+// GetInteger returns the Integer field if non-nil, zero value otherwise.
+func (o *FormatTest) GetInteger() int32 {
+	if o == nil || o.Integer == nil {
+		var ret int32
+		return ret
+	}
+	return *o.Integer
+}
+
+// GetIntegerOk returns a tuple with the Integer field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetIntegerOk() (int32, bool) {
+	if o == nil || o.Integer == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.Integer, true
+}
+
+// HasInteger returns a boolean if a field has been set.
+func (o *FormatTest) HasInteger() bool {
+	if o != nil && o.Integer != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetInteger gets a reference to the given int32 and assigns it to the Integer field.
+func (o *FormatTest) SetInteger(v int32) {
+	o.Integer = &v
+}
+
+// GetInt32 returns the Int32 field if non-nil, zero value otherwise.
+func (o *FormatTest) GetInt32() int32 {
+	if o == nil || o.Int32 == nil {
+		var ret int32
+		return ret
+	}
+	return *o.Int32
+}
+
+// GetInt32Ok returns a tuple with the Int32 field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetInt32Ok() (int32, bool) {
+	if o == nil || o.Int32 == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.Int32, true
+}
+
+// HasInt32 returns a boolean if a field has been set.
+func (o *FormatTest) HasInt32() bool {
+	if o != nil && o.Int32 != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetInt32 gets a reference to the given int32 and assigns it to the Int32 field.
+func (o *FormatTest) SetInt32(v int32) {
+	o.Int32 = &v
+}
+
+// GetInt64 returns the Int64 field if non-nil, zero value otherwise.
+func (o *FormatTest) GetInt64() int64 {
+	if o == nil || o.Int64 == nil {
+		var ret int64
+		return ret
+	}
+	return *o.Int64
+}
+
+// GetInt64Ok returns a tuple with the Int64 field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetInt64Ok() (int64, bool) {
+	if o == nil || o.Int64 == nil {
+		var ret int64
+		return ret, false
+	}
+	return *o.Int64, true
+}
+
+// HasInt64 returns a boolean if a field has been set.
+func (o *FormatTest) HasInt64() bool {
+	if o != nil && o.Int64 != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetInt64 gets a reference to the given int64 and assigns it to the Int64 field.
+func (o *FormatTest) SetInt64(v int64) {
+	o.Int64 = &v
+}
+
+// GetNumber returns the Number field if non-nil, zero value otherwise.
+func (o *FormatTest) GetNumber() float32 {
+	if o == nil || o.Number == nil {
+		var ret float32
+		return ret
+	}
+	return *o.Number
+}
+
+// GetNumberOk returns a tuple with the Number field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetNumberOk() (float32, bool) {
+	if o == nil || o.Number == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.Number, true
+}
+
+// HasNumber returns a boolean if a field has been set.
+func (o *FormatTest) HasNumber() bool {
+	if o != nil && o.Number != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNumber gets a reference to the given float32 and assigns it to the Number field.
+func (o *FormatTest) SetNumber(v float32) {
+	o.Number = &v
+}
+
+// GetFloat returns the Float field if non-nil, zero value otherwise.
+func (o *FormatTest) GetFloat() float32 {
+	if o == nil || o.Float == nil {
+		var ret float32
+		return ret
+	}
+	return *o.Float
 }
+
+// GetFloatOk returns a tuple with the Float field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetFloatOk() (float32, bool) {
+	if o == nil || o.Float == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.Float, true
+}
+
+// HasFloat returns a boolean if a field has been set.
+func (o *FormatTest) HasFloat() bool {
+	if o != nil && o.Float != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetFloat gets a reference to the given float32 and assigns it to the Float field.
+func (o *FormatTest) SetFloat(v float32) {
+	o.Float = &v
+}
+
+// GetDouble returns the Double field if non-nil, zero value otherwise.
+func (o *FormatTest) GetDouble() float64 {
+	if o == nil || o.Double == nil {
+		var ret float64
+		return ret
+	}
+	return *o.Double
+}
+
+// GetDoubleOk returns a tuple with the Double field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetDoubleOk() (float64, bool) {
+	if o == nil || o.Double == nil {
+		var ret float64
+		return ret, false
+	}
+	return *o.Double, true
+}
+
+// HasDouble returns a boolean if a field has been set.
+func (o *FormatTest) HasDouble() bool {
+	if o != nil && o.Double != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetDouble gets a reference to the given float64 and assigns it to the Double field.
+func (o *FormatTest) SetDouble(v float64) {
+	o.Double = &v
+}
+
+// GetString returns the String field if non-nil, zero value otherwise.
+func (o *FormatTest) GetString() string {
+	if o == nil || o.String == nil {
+		var ret string
+		return ret
+	}
+	return *o.String
+}
+
+// GetStringOk returns a tuple with the String field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetStringOk() (string, bool) {
+	if o == nil || o.String == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.String, true
+}
+
+// HasString returns a boolean if a field has been set.
+func (o *FormatTest) HasString() bool {
+	if o != nil && o.String != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetString gets a reference to the given string and assigns it to the String field.
+func (o *FormatTest) SetString(v string) {
+	o.String = &v
+}
+
+// GetByte returns the Byte field if non-nil, zero value otherwise.
+func (o *FormatTest) GetByte() string {
+	if o == nil || o.Byte == nil {
+		var ret string
+		return ret
+	}
+	return *o.Byte
+}
+
+// GetByteOk returns a tuple with the Byte field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetByteOk() (string, bool) {
+	if o == nil || o.Byte == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Byte, true
+}
+
+// HasByte returns a boolean if a field has been set.
+func (o *FormatTest) HasByte() bool {
+	if o != nil && o.Byte != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetByte gets a reference to the given string and assigns it to the Byte field.
+func (o *FormatTest) SetByte(v string) {
+	o.Byte = &v
+}
+
+// GetBinary returns the Binary field if non-nil, zero value otherwise.
+func (o *FormatTest) GetBinary() *os.File {
+	if o == nil || o.Binary == nil {
+		var ret *os.File
+		return ret
+	}
+	return *o.Binary
+}
+
+// GetBinaryOk returns a tuple with the Binary field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetBinaryOk() (*os.File, bool) {
+	if o == nil || o.Binary == nil {
+		var ret *os.File
+		return ret, false
+	}
+	return *o.Binary, true
+}
+
+// HasBinary returns a boolean if a field has been set.
+func (o *FormatTest) HasBinary() bool {
+	if o != nil && o.Binary != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetBinary gets a reference to the given *os.File and assigns it to the Binary field.
+func (o *FormatTest) SetBinary(v *os.File) {
+	o.Binary = &v
+}
+
+// GetDate returns the Date field if non-nil, zero value otherwise.
+func (o *FormatTest) GetDate() string {
+	if o == nil || o.Date == nil {
+		var ret string
+		return ret
+	}
+	return *o.Date
+}
+
+// GetDateOk returns a tuple with the Date field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetDateOk() (string, bool) {
+	if o == nil || o.Date == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Date, true
+}
+
+// HasDate returns a boolean if a field has been set.
+func (o *FormatTest) HasDate() bool {
+	if o != nil && o.Date != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetDate gets a reference to the given string and assigns it to the Date field.
+func (o *FormatTest) SetDate(v string) {
+	o.Date = &v
+}
+
+// GetDateTime returns the DateTime field if non-nil, zero value otherwise.
+func (o *FormatTest) GetDateTime() time.Time {
+	if o == nil || o.DateTime == nil {
+		var ret time.Time
+		return ret
+	}
+	return *o.DateTime
+}
+
+// GetDateTimeOk returns a tuple with the DateTime field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetDateTimeOk() (time.Time, bool) {
+	if o == nil || o.DateTime == nil {
+		var ret time.Time
+		return ret, false
+	}
+	return *o.DateTime, true
+}
+
+// HasDateTime returns a boolean if a field has been set.
+func (o *FormatTest) HasDateTime() bool {
+	if o != nil && o.DateTime != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetDateTime gets a reference to the given time.Time and assigns it to the DateTime field.
+func (o *FormatTest) SetDateTime(v time.Time) {
+	o.DateTime = &v
+}
+
+// GetUuid returns the Uuid field if non-nil, zero value otherwise.
+func (o *FormatTest) GetUuid() string {
+	if o == nil || o.Uuid == nil {
+		var ret string
+		return ret
+	}
+	return *o.Uuid
+}
+
+// GetUuidOk returns a tuple with the Uuid field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetUuidOk() (string, bool) {
+	if o == nil || o.Uuid == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Uuid, true
+}
+
+// HasUuid returns a boolean if a field has been set.
+func (o *FormatTest) HasUuid() bool {
+	if o != nil && o.Uuid != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetUuid gets a reference to the given string and assigns it to the Uuid field.
+func (o *FormatTest) SetUuid(v string) {
+	o.Uuid = &v
+}
+
+// GetPassword returns the Password field if non-nil, zero value otherwise.
+func (o *FormatTest) GetPassword() string {
+	if o == nil || o.Password == nil {
+		var ret string
+		return ret
+	}
+	return *o.Password
+}
+
+// GetPasswordOk returns a tuple with the Password field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *FormatTest) GetPasswordOk() (string, bool) {
+	if o == nil || o.Password == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Password, true
+}
+
+// HasPassword returns a boolean if a field has been set.
+func (o *FormatTest) HasPassword() bool {
+	if o != nil && o.Password != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPassword gets a reference to the given string and assigns it to the Password field.
+func (o *FormatTest) SetPassword(v string) {
+	o.Password = &v
+}
+
+
+func (o FormatTest) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Integer != nil {
+		toSerialize["integer"] = o.Integer
+	}
+	if o.Int32 != nil {
+		toSerialize["int32"] = o.Int32
+	}
+	if o.Int64 != nil {
+		toSerialize["int64"] = o.Int64
+	}
+	if o.Number == nil {
+		return nil, errors.New("Number is required and not nullable, but was not set on FormatTest")
+	}
+	if o.Number != nil {
+		toSerialize["number"] = o.Number
+	}
+	if o.Float != nil {
+		toSerialize["float"] = o.Float
+	}
+	if o.Double != nil {
+		toSerialize["double"] = o.Double
+	}
+	if o.String != nil {
+		toSerialize["string"] = o.String
+	}
+	if o.Byte == nil {
+		return nil, errors.New("Byte is required and not nullable, but was not set on FormatTest")
+	}
+	if o.Byte != nil {
+		toSerialize["byte"] = o.Byte
+	}
+	if o.Binary != nil {
+		toSerialize["binary"] = o.Binary
+	}
+	if o.Date == nil {
+		return nil, errors.New("Date is required and not nullable, but was not set on FormatTest")
+	}
+	if o.Date != nil {
+		toSerialize["date"] = o.Date
+	}
+	if o.DateTime != nil {
+		toSerialize["dateTime"] = o.DateTime
+	}
+	if o.Uuid != nil {
+		toSerialize["uuid"] = o.Uuid
+	}
+	if o.Password == nil {
+		return nil, errors.New("Password is required and not nullable, but was not set on FormatTest")
+	}
+	if o.Password != nil {
+		toSerialize["password"] = o.Password
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_has_only_read_only.go b/samples/client/petstore/go-experimental/go-petstore/model_has_only_read_only.go
index 1cf0e4f530d4556375143482a71d9cea283f9cd9..1b03286159ef73f048714fcd6ed623c0253afeec 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_has_only_read_only.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_has_only_read_only.go
@@ -8,8 +8,93 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type HasOnlyReadOnly struct {
-	Bar string `json:"bar,omitempty"`
-	Foo string `json:"foo,omitempty"`
+	Bar *string `json:"bar,omitempty"`
+
+	Foo *string `json:"foo,omitempty"`
+
+}
+
+// GetBar returns the Bar field if non-nil, zero value otherwise.
+func (o *HasOnlyReadOnly) GetBar() string {
+	if o == nil || o.Bar == nil {
+		var ret string
+		return ret
+	}
+	return *o.Bar
+}
+
+// GetBarOk returns a tuple with the Bar field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *HasOnlyReadOnly) GetBarOk() (string, bool) {
+	if o == nil || o.Bar == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Bar, true
+}
+
+// HasBar returns a boolean if a field has been set.
+func (o *HasOnlyReadOnly) HasBar() bool {
+	if o != nil && o.Bar != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetBar gets a reference to the given string and assigns it to the Bar field.
+func (o *HasOnlyReadOnly) SetBar(v string) {
+	o.Bar = &v
+}
+
+// GetFoo returns the Foo field if non-nil, zero value otherwise.
+func (o *HasOnlyReadOnly) GetFoo() string {
+	if o == nil || o.Foo == nil {
+		var ret string
+		return ret
+	}
+	return *o.Foo
 }
+
+// GetFooOk returns a tuple with the Foo field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *HasOnlyReadOnly) GetFooOk() (string, bool) {
+	if o == nil || o.Foo == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Foo, true
+}
+
+// HasFoo returns a boolean if a field has been set.
+func (o *HasOnlyReadOnly) HasFoo() bool {
+	if o != nil && o.Foo != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetFoo gets a reference to the given string and assigns it to the Foo field.
+func (o *HasOnlyReadOnly) SetFoo(v string) {
+	o.Foo = &v
+}
+
+
+func (o HasOnlyReadOnly) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Bar != nil {
+		toSerialize["bar"] = o.Bar
+	}
+	if o.Foo != nil {
+		toSerialize["foo"] = o.Foo
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_list.go b/samples/client/petstore/go-experimental/go-petstore/model_list.go
index 12f3bd3f6600eb4ac806eb983fd0d7f17d5ff5b4..5c9d4df5c950c611911207e45936174676151ecc 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_list.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_list.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type List struct {
-	Var123List string `json:"123-list,omitempty"`
+	Var123List *string `json:"123-list,omitempty"`
+
+}
+
+// GetVar123List returns the Var123List field if non-nil, zero value otherwise.
+func (o *List) GetVar123List() string {
+	if o == nil || o.Var123List == nil {
+		var ret string
+		return ret
+	}
+	return *o.Var123List
+}
+
+// GetVar123ListOk returns a tuple with the Var123List field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *List) GetVar123ListOk() (string, bool) {
+	if o == nil || o.Var123List == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Var123List, true
+}
+
+// HasVar123List returns a boolean if a field has been set.
+func (o *List) HasVar123List() bool {
+	if o != nil && o.Var123List != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetVar123List gets a reference to the given string and assigns it to the Var123List field.
+func (o *List) SetVar123List(v string) {
+	o.Var123List = &v
+}
+
+
+func (o List) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Var123List != nil {
+		toSerialize["123-list"] = o.Var123List
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_map_test_.go b/samples/client/petstore/go-experimental/go-petstore/model_map_test_.go
index 830e760fe314e7b52544396a749d3f65ff913224..3ae7b22b887bd08ac13896a8331245524419828a 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_map_test_.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_map_test_.go
@@ -8,10 +8,169 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type MapTest struct {
-	MapMapOfString map[string]map[string]string `json:"map_map_of_string,omitempty"`
-	MapOfEnumString map[string]string `json:"map_of_enum_string,omitempty"`
-	DirectMap map[string]bool `json:"direct_map,omitempty"`
-	IndirectMap map[string]bool `json:"indirect_map,omitempty"`
+	MapMapOfString *map[string]map[string]string `json:"map_map_of_string,omitempty"`
+
+	MapOfEnumString *map[string]string `json:"map_of_enum_string,omitempty"`
+
+	DirectMap *map[string]bool `json:"direct_map,omitempty"`
+
+	IndirectMap *map[string]bool `json:"indirect_map,omitempty"`
+
+}
+
+// GetMapMapOfString returns the MapMapOfString field if non-nil, zero value otherwise.
+func (o *MapTest) GetMapMapOfString() map[string]map[string]string {
+	if o == nil || o.MapMapOfString == nil {
+		var ret map[string]map[string]string
+		return ret
+	}
+	return *o.MapMapOfString
 }
+
+// GetMapMapOfStringOk returns a tuple with the MapMapOfString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *MapTest) GetMapMapOfStringOk() (map[string]map[string]string, bool) {
+	if o == nil || o.MapMapOfString == nil {
+		var ret map[string]map[string]string
+		return ret, false
+	}
+	return *o.MapMapOfString, true
+}
+
+// HasMapMapOfString returns a boolean if a field has been set.
+func (o *MapTest) HasMapMapOfString() bool {
+	if o != nil && o.MapMapOfString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapMapOfString gets a reference to the given map[string]map[string]string and assigns it to the MapMapOfString field.
+func (o *MapTest) SetMapMapOfString(v map[string]map[string]string) {
+	o.MapMapOfString = &v
+}
+
+// GetMapOfEnumString returns the MapOfEnumString field if non-nil, zero value otherwise.
+func (o *MapTest) GetMapOfEnumString() map[string]string {
+	if o == nil || o.MapOfEnumString == nil {
+		var ret map[string]string
+		return ret
+	}
+	return *o.MapOfEnumString
+}
+
+// GetMapOfEnumStringOk returns a tuple with the MapOfEnumString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *MapTest) GetMapOfEnumStringOk() (map[string]string, bool) {
+	if o == nil || o.MapOfEnumString == nil {
+		var ret map[string]string
+		return ret, false
+	}
+	return *o.MapOfEnumString, true
+}
+
+// HasMapOfEnumString returns a boolean if a field has been set.
+func (o *MapTest) HasMapOfEnumString() bool {
+	if o != nil && o.MapOfEnumString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMapOfEnumString gets a reference to the given map[string]string and assigns it to the MapOfEnumString field.
+func (o *MapTest) SetMapOfEnumString(v map[string]string) {
+	o.MapOfEnumString = &v
+}
+
+// GetDirectMap returns the DirectMap field if non-nil, zero value otherwise.
+func (o *MapTest) GetDirectMap() map[string]bool {
+	if o == nil || o.DirectMap == nil {
+		var ret map[string]bool
+		return ret
+	}
+	return *o.DirectMap
+}
+
+// GetDirectMapOk returns a tuple with the DirectMap field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *MapTest) GetDirectMapOk() (map[string]bool, bool) {
+	if o == nil || o.DirectMap == nil {
+		var ret map[string]bool
+		return ret, false
+	}
+	return *o.DirectMap, true
+}
+
+// HasDirectMap returns a boolean if a field has been set.
+func (o *MapTest) HasDirectMap() bool {
+	if o != nil && o.DirectMap != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetDirectMap gets a reference to the given map[string]bool and assigns it to the DirectMap field.
+func (o *MapTest) SetDirectMap(v map[string]bool) {
+	o.DirectMap = &v
+}
+
+// GetIndirectMap returns the IndirectMap field if non-nil, zero value otherwise.
+func (o *MapTest) GetIndirectMap() map[string]bool {
+	if o == nil || o.IndirectMap == nil {
+		var ret map[string]bool
+		return ret
+	}
+	return *o.IndirectMap
+}
+
+// GetIndirectMapOk returns a tuple with the IndirectMap field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *MapTest) GetIndirectMapOk() (map[string]bool, bool) {
+	if o == nil || o.IndirectMap == nil {
+		var ret map[string]bool
+		return ret, false
+	}
+	return *o.IndirectMap, true
+}
+
+// HasIndirectMap returns a boolean if a field has been set.
+func (o *MapTest) HasIndirectMap() bool {
+	if o != nil && o.IndirectMap != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetIndirectMap gets a reference to the given map[string]bool and assigns it to the IndirectMap field.
+func (o *MapTest) SetIndirectMap(v map[string]bool) {
+	o.IndirectMap = &v
+}
+
+
+func (o MapTest) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.MapMapOfString != nil {
+		toSerialize["map_map_of_string"] = o.MapMapOfString
+	}
+	if o.MapOfEnumString != nil {
+		toSerialize["map_of_enum_string"] = o.MapOfEnumString
+	}
+	if o.DirectMap != nil {
+		toSerialize["direct_map"] = o.DirectMap
+	}
+	if o.IndirectMap != nil {
+		toSerialize["indirect_map"] = o.IndirectMap
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_mixed_properties_and_additional_properties_class.go b/samples/client/petstore/go-experimental/go-petstore/model_mixed_properties_and_additional_properties_class.go
index 0ad92e96f8ece7b2069554568c55919635c8ace6..5dd3d1d02068cf80ed517d9f8924d47be27b13f3 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_mixed_properties_and_additional_properties_class.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_mixed_properties_and_additional_properties_class.go
@@ -10,10 +10,130 @@
 package petstore
 import (
 	"time"
+	"encoding/json"
 )
 
 type MixedPropertiesAndAdditionalPropertiesClass struct {
-	Uuid string `json:"uuid,omitempty"`
-	DateTime time.Time `json:"dateTime,omitempty"`
-	Map map[string]Animal `json:"map,omitempty"`
+	Uuid *string `json:"uuid,omitempty"`
+
+	DateTime *time.Time `json:"dateTime,omitempty"`
+
+	Map *map[string]Animal `json:"map,omitempty"`
+
+}
+
+// GetUuid returns the Uuid field if non-nil, zero value otherwise.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) GetUuid() string {
+	if o == nil || o.Uuid == nil {
+		var ret string
+		return ret
+	}
+	return *o.Uuid
+}
+
+// GetUuidOk returns a tuple with the Uuid field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) GetUuidOk() (string, bool) {
+	if o == nil || o.Uuid == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Uuid, true
+}
+
+// HasUuid returns a boolean if a field has been set.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) HasUuid() bool {
+	if o != nil && o.Uuid != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetUuid gets a reference to the given string and assigns it to the Uuid field.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) SetUuid(v string) {
+	o.Uuid = &v
+}
+
+// GetDateTime returns the DateTime field if non-nil, zero value otherwise.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) GetDateTime() time.Time {
+	if o == nil || o.DateTime == nil {
+		var ret time.Time
+		return ret
+	}
+	return *o.DateTime
 }
+
+// GetDateTimeOk returns a tuple with the DateTime field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) GetDateTimeOk() (time.Time, bool) {
+	if o == nil || o.DateTime == nil {
+		var ret time.Time
+		return ret, false
+	}
+	return *o.DateTime, true
+}
+
+// HasDateTime returns a boolean if a field has been set.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) HasDateTime() bool {
+	if o != nil && o.DateTime != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetDateTime gets a reference to the given time.Time and assigns it to the DateTime field.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) SetDateTime(v time.Time) {
+	o.DateTime = &v
+}
+
+// GetMap returns the Map field if non-nil, zero value otherwise.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) GetMap() map[string]Animal {
+	if o == nil || o.Map == nil {
+		var ret map[string]Animal
+		return ret
+	}
+	return *o.Map
+}
+
+// GetMapOk returns a tuple with the Map field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) GetMapOk() (map[string]Animal, bool) {
+	if o == nil || o.Map == nil {
+		var ret map[string]Animal
+		return ret, false
+	}
+	return *o.Map, true
+}
+
+// HasMap returns a boolean if a field has been set.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) HasMap() bool {
+	if o != nil && o.Map != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMap gets a reference to the given map[string]Animal and assigns it to the Map field.
+func (o *MixedPropertiesAndAdditionalPropertiesClass) SetMap(v map[string]Animal) {
+	o.Map = &v
+}
+
+
+func (o MixedPropertiesAndAdditionalPropertiesClass) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Uuid != nil {
+		toSerialize["uuid"] = o.Uuid
+	}
+	if o.DateTime != nil {
+		toSerialize["dateTime"] = o.DateTime
+	}
+	if o.Map != nil {
+		toSerialize["map"] = o.Map
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_name.go b/samples/client/petstore/go-experimental/go-petstore/model_name.go
index dde1b92eb6ab9b3fc68382d14db2a437863d84c3..1a0addae441b7c7197ea05b23c9e61574a5fcca2 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_name.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_name.go
@@ -8,11 +8,174 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+	"errors"
+)
 
 // Model for testing model name same as property name
 type Name struct {
-	Name int32 `json:"name"`
-	SnakeCase int32 `json:"snake_case,omitempty"`
-	Property string `json:"property,omitempty"`
-	Var123Number int32 `json:"123Number,omitempty"`
+	Name *int32 `json:"name,omitempty"`
+
+	SnakeCase *int32 `json:"snake_case,omitempty"`
+
+	Property *string `json:"property,omitempty"`
+
+	Var123Number *int32 `json:"123Number,omitempty"`
+
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *Name) GetName() int32 {
+	if o == nil || o.Name == nil {
+		var ret int32
+		return ret
+	}
+	return *o.Name
 }
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Name) GetNameOk() (int32, bool) {
+	if o == nil || o.Name == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *Name) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetName gets a reference to the given int32 and assigns it to the Name field.
+func (o *Name) SetName(v int32) {
+	o.Name = &v
+}
+
+// GetSnakeCase returns the SnakeCase field if non-nil, zero value otherwise.
+func (o *Name) GetSnakeCase() int32 {
+	if o == nil || o.SnakeCase == nil {
+		var ret int32
+		return ret
+	}
+	return *o.SnakeCase
+}
+
+// GetSnakeCaseOk returns a tuple with the SnakeCase field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Name) GetSnakeCaseOk() (int32, bool) {
+	if o == nil || o.SnakeCase == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.SnakeCase, true
+}
+
+// HasSnakeCase returns a boolean if a field has been set.
+func (o *Name) HasSnakeCase() bool {
+	if o != nil && o.SnakeCase != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetSnakeCase gets a reference to the given int32 and assigns it to the SnakeCase field.
+func (o *Name) SetSnakeCase(v int32) {
+	o.SnakeCase = &v
+}
+
+// GetProperty returns the Property field if non-nil, zero value otherwise.
+func (o *Name) GetProperty() string {
+	if o == nil || o.Property == nil {
+		var ret string
+		return ret
+	}
+	return *o.Property
+}
+
+// GetPropertyOk returns a tuple with the Property field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Name) GetPropertyOk() (string, bool) {
+	if o == nil || o.Property == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Property, true
+}
+
+// HasProperty returns a boolean if a field has been set.
+func (o *Name) HasProperty() bool {
+	if o != nil && o.Property != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetProperty gets a reference to the given string and assigns it to the Property field.
+func (o *Name) SetProperty(v string) {
+	o.Property = &v
+}
+
+// GetVar123Number returns the Var123Number field if non-nil, zero value otherwise.
+func (o *Name) GetVar123Number() int32 {
+	if o == nil || o.Var123Number == nil {
+		var ret int32
+		return ret
+	}
+	return *o.Var123Number
+}
+
+// GetVar123NumberOk returns a tuple with the Var123Number field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Name) GetVar123NumberOk() (int32, bool) {
+	if o == nil || o.Var123Number == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.Var123Number, true
+}
+
+// HasVar123Number returns a boolean if a field has been set.
+func (o *Name) HasVar123Number() bool {
+	if o != nil && o.Var123Number != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetVar123Number gets a reference to the given int32 and assigns it to the Var123Number field.
+func (o *Name) SetVar123Number(v int32) {
+	o.Var123Number = &v
+}
+
+
+func (o Name) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Name == nil {
+		return nil, errors.New("Name is required and not nullable, but was not set on Name")
+	}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	if o.SnakeCase != nil {
+		toSerialize["snake_case"] = o.SnakeCase
+	}
+	if o.Property != nil {
+		toSerialize["property"] = o.Property
+	}
+	if o.Var123Number != nil {
+		toSerialize["123Number"] = o.Var123Number
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_number_only.go b/samples/client/petstore/go-experimental/go-petstore/model_number_only.go
index 7a2fd5fd8f6d19b71b9154dd01ac9bdf12a31030..47d69c607e21c59f1bec16ae7b18f2bf08a3fcd2 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_number_only.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_number_only.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type NumberOnly struct {
-	JustNumber float32 `json:"JustNumber,omitempty"`
+	JustNumber *float32 `json:"JustNumber,omitempty"`
+
+}
+
+// GetJustNumber returns the JustNumber field if non-nil, zero value otherwise.
+func (o *NumberOnly) GetJustNumber() float32 {
+	if o == nil || o.JustNumber == nil {
+		var ret float32
+		return ret
+	}
+	return *o.JustNumber
+}
+
+// GetJustNumberOk returns a tuple with the JustNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *NumberOnly) GetJustNumberOk() (float32, bool) {
+	if o == nil || o.JustNumber == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.JustNumber, true
+}
+
+// HasJustNumber returns a boolean if a field has been set.
+func (o *NumberOnly) HasJustNumber() bool {
+	if o != nil && o.JustNumber != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetJustNumber gets a reference to the given float32 and assigns it to the JustNumber field.
+func (o *NumberOnly) SetJustNumber(v float32) {
+	o.JustNumber = &v
+}
+
+
+func (o NumberOnly) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.JustNumber != nil {
+		toSerialize["JustNumber"] = o.JustNumber
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_order.go b/samples/client/petstore/go-experimental/go-petstore/model_order.go
index c81d67ae0fa4760f5b37b46ab766dcc68952b165..75d9299386da18bbd00f7aaa457538c9559a67d6 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_order.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_order.go
@@ -10,14 +10,245 @@
 package petstore
 import (
 	"time"
+	"encoding/json"
 )
 
 type Order struct {
-	Id int64 `json:"id,omitempty"`
-	PetId int64 `json:"petId,omitempty"`
-	Quantity int32 `json:"quantity,omitempty"`
-	ShipDate time.Time `json:"shipDate,omitempty"`
+	Id *int64 `json:"id,omitempty"`
+
+	PetId *int64 `json:"petId,omitempty"`
+
+	Quantity *int32 `json:"quantity,omitempty"`
+
+	ShipDate *time.Time `json:"shipDate,omitempty"`
+
 	// Order Status
-	Status string `json:"status,omitempty"`
-	Complete bool `json:"complete,omitempty"`
+	Status *string `json:"status,omitempty"`
+
+	Complete *bool `json:"complete,omitempty"`
+
+}
+
+// GetId returns the Id field if non-nil, zero value otherwise.
+func (o *Order) GetId() int64 {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret
+	}
+	return *o.Id
+}
+
+// GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Order) GetIdOk() (int64, bool) {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret, false
+	}
+	return *o.Id, true
+}
+
+// HasId returns a boolean if a field has been set.
+func (o *Order) HasId() bool {
+	if o != nil && o.Id != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetId gets a reference to the given int64 and assigns it to the Id field.
+func (o *Order) SetId(v int64) {
+	o.Id = &v
+}
+
+// GetPetId returns the PetId field if non-nil, zero value otherwise.
+func (o *Order) GetPetId() int64 {
+	if o == nil || o.PetId == nil {
+		var ret int64
+		return ret
+	}
+	return *o.PetId
+}
+
+// GetPetIdOk returns a tuple with the PetId field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Order) GetPetIdOk() (int64, bool) {
+	if o == nil || o.PetId == nil {
+		var ret int64
+		return ret, false
+	}
+	return *o.PetId, true
+}
+
+// HasPetId returns a boolean if a field has been set.
+func (o *Order) HasPetId() bool {
+	if o != nil && o.PetId != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPetId gets a reference to the given int64 and assigns it to the PetId field.
+func (o *Order) SetPetId(v int64) {
+	o.PetId = &v
+}
+
+// GetQuantity returns the Quantity field if non-nil, zero value otherwise.
+func (o *Order) GetQuantity() int32 {
+	if o == nil || o.Quantity == nil {
+		var ret int32
+		return ret
+	}
+	return *o.Quantity
+}
+
+// GetQuantityOk returns a tuple with the Quantity field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Order) GetQuantityOk() (int32, bool) {
+	if o == nil || o.Quantity == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.Quantity, true
+}
+
+// HasQuantity returns a boolean if a field has been set.
+func (o *Order) HasQuantity() bool {
+	if o != nil && o.Quantity != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetQuantity gets a reference to the given int32 and assigns it to the Quantity field.
+func (o *Order) SetQuantity(v int32) {
+	o.Quantity = &v
 }
+
+// GetShipDate returns the ShipDate field if non-nil, zero value otherwise.
+func (o *Order) GetShipDate() time.Time {
+	if o == nil || o.ShipDate == nil {
+		var ret time.Time
+		return ret
+	}
+	return *o.ShipDate
+}
+
+// GetShipDateOk returns a tuple with the ShipDate field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Order) GetShipDateOk() (time.Time, bool) {
+	if o == nil || o.ShipDate == nil {
+		var ret time.Time
+		return ret, false
+	}
+	return *o.ShipDate, true
+}
+
+// HasShipDate returns a boolean if a field has been set.
+func (o *Order) HasShipDate() bool {
+	if o != nil && o.ShipDate != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetShipDate gets a reference to the given time.Time and assigns it to the ShipDate field.
+func (o *Order) SetShipDate(v time.Time) {
+	o.ShipDate = &v
+}
+
+// GetStatus returns the Status field if non-nil, zero value otherwise.
+func (o *Order) GetStatus() string {
+	if o == nil || o.Status == nil {
+		var ret string
+		return ret
+	}
+	return *o.Status
+}
+
+// GetStatusOk returns a tuple with the Status field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Order) GetStatusOk() (string, bool) {
+	if o == nil || o.Status == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Status, true
+}
+
+// HasStatus returns a boolean if a field has been set.
+func (o *Order) HasStatus() bool {
+	if o != nil && o.Status != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetStatus gets a reference to the given string and assigns it to the Status field.
+func (o *Order) SetStatus(v string) {
+	o.Status = &v
+}
+
+// GetComplete returns the Complete field if non-nil, zero value otherwise.
+func (o *Order) GetComplete() bool {
+	if o == nil || o.Complete == nil {
+		var ret bool
+		return ret
+	}
+	return *o.Complete
+}
+
+// GetCompleteOk returns a tuple with the Complete field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Order) GetCompleteOk() (bool, bool) {
+	if o == nil || o.Complete == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.Complete, true
+}
+
+// HasComplete returns a boolean if a field has been set.
+func (o *Order) HasComplete() bool {
+	if o != nil && o.Complete != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetComplete gets a reference to the given bool and assigns it to the Complete field.
+func (o *Order) SetComplete(v bool) {
+	o.Complete = &v
+}
+
+
+func (o Order) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Id != nil {
+		toSerialize["id"] = o.Id
+	}
+	if o.PetId != nil {
+		toSerialize["petId"] = o.PetId
+	}
+	if o.Quantity != nil {
+		toSerialize["quantity"] = o.Quantity
+	}
+	if o.ShipDate != nil {
+		toSerialize["shipDate"] = o.ShipDate
+	}
+	if o.Status != nil {
+		toSerialize["status"] = o.Status
+	}
+	if o.Complete != nil {
+		toSerialize["complete"] = o.Complete
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_outer_composite.go b/samples/client/petstore/go-experimental/go-petstore/model_outer_composite.go
index 0ebb526267e8000abf255ed41d8beaee352748aa..83723a9b8ef1eca85dc4fae48f462b45fb3bd817 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_outer_composite.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_outer_composite.go
@@ -8,9 +8,131 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type OuterComposite struct {
-	MyNumber float32 `json:"my_number,omitempty"`
-	MyString string `json:"my_string,omitempty"`
-	MyBoolean bool `json:"my_boolean,omitempty"`
+	MyNumber *float32 `json:"my_number,omitempty"`
+
+	MyString *string `json:"my_string,omitempty"`
+
+	MyBoolean *bool `json:"my_boolean,omitempty"`
+
+}
+
+// GetMyNumber returns the MyNumber field if non-nil, zero value otherwise.
+func (o *OuterComposite) GetMyNumber() float32 {
+	if o == nil || o.MyNumber == nil {
+		var ret float32
+		return ret
+	}
+	return *o.MyNumber
+}
+
+// GetMyNumberOk returns a tuple with the MyNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *OuterComposite) GetMyNumberOk() (float32, bool) {
+	if o == nil || o.MyNumber == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.MyNumber, true
+}
+
+// HasMyNumber returns a boolean if a field has been set.
+func (o *OuterComposite) HasMyNumber() bool {
+	if o != nil && o.MyNumber != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMyNumber gets a reference to the given float32 and assigns it to the MyNumber field.
+func (o *OuterComposite) SetMyNumber(v float32) {
+	o.MyNumber = &v
+}
+
+// GetMyString returns the MyString field if non-nil, zero value otherwise.
+func (o *OuterComposite) GetMyString() string {
+	if o == nil || o.MyString == nil {
+		var ret string
+		return ret
+	}
+	return *o.MyString
 }
+
+// GetMyStringOk returns a tuple with the MyString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *OuterComposite) GetMyStringOk() (string, bool) {
+	if o == nil || o.MyString == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.MyString, true
+}
+
+// HasMyString returns a boolean if a field has been set.
+func (o *OuterComposite) HasMyString() bool {
+	if o != nil && o.MyString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMyString gets a reference to the given string and assigns it to the MyString field.
+func (o *OuterComposite) SetMyString(v string) {
+	o.MyString = &v
+}
+
+// GetMyBoolean returns the MyBoolean field if non-nil, zero value otherwise.
+func (o *OuterComposite) GetMyBoolean() bool {
+	if o == nil || o.MyBoolean == nil {
+		var ret bool
+		return ret
+	}
+	return *o.MyBoolean
+}
+
+// GetMyBooleanOk returns a tuple with the MyBoolean field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *OuterComposite) GetMyBooleanOk() (bool, bool) {
+	if o == nil || o.MyBoolean == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.MyBoolean, true
+}
+
+// HasMyBoolean returns a boolean if a field has been set.
+func (o *OuterComposite) HasMyBoolean() bool {
+	if o != nil && o.MyBoolean != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetMyBoolean gets a reference to the given bool and assigns it to the MyBoolean field.
+func (o *OuterComposite) SetMyBoolean(v bool) {
+	o.MyBoolean = &v
+}
+
+
+func (o OuterComposite) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.MyNumber != nil {
+		toSerialize["my_number"] = o.MyNumber
+	}
+	if o.MyString != nil {
+		toSerialize["my_string"] = o.MyString
+	}
+	if o.MyBoolean != nil {
+		toSerialize["my_boolean"] = o.MyBoolean
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_outer_enum.go b/samples/client/petstore/go-experimental/go-petstore/model_outer_enum.go
index 903d31e82690594e87959c80f519b97e0d5e2b7e..131a07c71a8edd5a7d71eb85837ed1211e1a952e 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_outer_enum.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_outer_enum.go
@@ -15,4 +15,5 @@ const (
 	PLACED OuterEnum = "placed"
 	APPROVED OuterEnum = "approved"
 	DELIVERED OuterEnum = "delivered"
-)
\ No newline at end of file
+)
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_pet.go b/samples/client/petstore/go-experimental/go-petstore/model_pet.go
index 4930dbb92e8ed654b15f63af501e44f1d186ce29..1216b0e799e10690ecaa1ad39d35cb9fed97037b 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_pet.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_pet.go
@@ -8,13 +8,253 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+	"errors"
+)
 
 type Pet struct {
-	Id int64 `json:"id,omitempty"`
-	Category Category `json:"category,omitempty"`
-	Name string `json:"name"`
-	PhotoUrls []string `json:"photoUrls"`
-	Tags []Tag `json:"tags,omitempty"`
+	Id *int64 `json:"id,omitempty"`
+
+	Category *Category `json:"category,omitempty"`
+
+	Name *string `json:"name,omitempty"`
+
+	PhotoUrls *[]string `json:"photoUrls,omitempty"`
+
+	Tags *[]Tag `json:"tags,omitempty"`
+
 	// pet status in the store
-	Status string `json:"status,omitempty"`
+	Status *string `json:"status,omitempty"`
+
+}
+
+// GetId returns the Id field if non-nil, zero value otherwise.
+func (o *Pet) GetId() int64 {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret
+	}
+	return *o.Id
+}
+
+// GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Pet) GetIdOk() (int64, bool) {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret, false
+	}
+	return *o.Id, true
+}
+
+// HasId returns a boolean if a field has been set.
+func (o *Pet) HasId() bool {
+	if o != nil && o.Id != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetId gets a reference to the given int64 and assigns it to the Id field.
+func (o *Pet) SetId(v int64) {
+	o.Id = &v
+}
+
+// GetCategory returns the Category field if non-nil, zero value otherwise.
+func (o *Pet) GetCategory() Category {
+	if o == nil || o.Category == nil {
+		var ret Category
+		return ret
+	}
+	return *o.Category
+}
+
+// GetCategoryOk returns a tuple with the Category field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Pet) GetCategoryOk() (Category, bool) {
+	if o == nil || o.Category == nil {
+		var ret Category
+		return ret, false
+	}
+	return *o.Category, true
+}
+
+// HasCategory returns a boolean if a field has been set.
+func (o *Pet) HasCategory() bool {
+	if o != nil && o.Category != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetCategory gets a reference to the given Category and assigns it to the Category field.
+func (o *Pet) SetCategory(v Category) {
+	o.Category = &v
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *Pet) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
+}
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Pet) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *Pet) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *Pet) SetName(v string) {
+	o.Name = &v
 }
+
+// GetPhotoUrls returns the PhotoUrls field if non-nil, zero value otherwise.
+func (o *Pet) GetPhotoUrls() []string {
+	if o == nil || o.PhotoUrls == nil {
+		var ret []string
+		return ret
+	}
+	return *o.PhotoUrls
+}
+
+// GetPhotoUrlsOk returns a tuple with the PhotoUrls field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Pet) GetPhotoUrlsOk() ([]string, bool) {
+	if o == nil || o.PhotoUrls == nil {
+		var ret []string
+		return ret, false
+	}
+	return *o.PhotoUrls, true
+}
+
+// HasPhotoUrls returns a boolean if a field has been set.
+func (o *Pet) HasPhotoUrls() bool {
+	if o != nil && o.PhotoUrls != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPhotoUrls gets a reference to the given []string and assigns it to the PhotoUrls field.
+func (o *Pet) SetPhotoUrls(v []string) {
+	o.PhotoUrls = &v
+}
+
+// GetTags returns the Tags field if non-nil, zero value otherwise.
+func (o *Pet) GetTags() []Tag {
+	if o == nil || o.Tags == nil {
+		var ret []Tag
+		return ret
+	}
+	return *o.Tags
+}
+
+// GetTagsOk returns a tuple with the Tags field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Pet) GetTagsOk() ([]Tag, bool) {
+	if o == nil || o.Tags == nil {
+		var ret []Tag
+		return ret, false
+	}
+	return *o.Tags, true
+}
+
+// HasTags returns a boolean if a field has been set.
+func (o *Pet) HasTags() bool {
+	if o != nil && o.Tags != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetTags gets a reference to the given []Tag and assigns it to the Tags field.
+func (o *Pet) SetTags(v []Tag) {
+	o.Tags = &v
+}
+
+// GetStatus returns the Status field if non-nil, zero value otherwise.
+func (o *Pet) GetStatus() string {
+	if o == nil || o.Status == nil {
+		var ret string
+		return ret
+	}
+	return *o.Status
+}
+
+// GetStatusOk returns a tuple with the Status field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Pet) GetStatusOk() (string, bool) {
+	if o == nil || o.Status == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Status, true
+}
+
+// HasStatus returns a boolean if a field has been set.
+func (o *Pet) HasStatus() bool {
+	if o != nil && o.Status != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetStatus gets a reference to the given string and assigns it to the Status field.
+func (o *Pet) SetStatus(v string) {
+	o.Status = &v
+}
+
+
+func (o Pet) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Id != nil {
+		toSerialize["id"] = o.Id
+	}
+	if o.Category != nil {
+		toSerialize["category"] = o.Category
+	}
+	if o.Name == nil {
+		return nil, errors.New("Name is required and not nullable, but was not set on Pet")
+	}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	if o.PhotoUrls == nil {
+		return nil, errors.New("PhotoUrls is required and not nullable, but was not set on Pet")
+	}
+	if o.PhotoUrls != nil {
+		toSerialize["photoUrls"] = o.PhotoUrls
+	}
+	if o.Tags != nil {
+		toSerialize["tags"] = o.Tags
+	}
+	if o.Status != nil {
+		toSerialize["status"] = o.Status
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_read_only_first.go b/samples/client/petstore/go-experimental/go-petstore/model_read_only_first.go
index 6b22163900b034680a4bfda6adbefa5b863d7ebb..5c92010e8d0c276bbded62c4e9bbd6e3b0aba231 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_read_only_first.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_read_only_first.go
@@ -8,8 +8,93 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type ReadOnlyFirst struct {
-	Bar string `json:"bar,omitempty"`
-	Baz string `json:"baz,omitempty"`
+	Bar *string `json:"bar,omitempty"`
+
+	Baz *string `json:"baz,omitempty"`
+
+}
+
+// GetBar returns the Bar field if non-nil, zero value otherwise.
+func (o *ReadOnlyFirst) GetBar() string {
+	if o == nil || o.Bar == nil {
+		var ret string
+		return ret
+	}
+	return *o.Bar
+}
+
+// GetBarOk returns a tuple with the Bar field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ReadOnlyFirst) GetBarOk() (string, bool) {
+	if o == nil || o.Bar == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Bar, true
+}
+
+// HasBar returns a boolean if a field has been set.
+func (o *ReadOnlyFirst) HasBar() bool {
+	if o != nil && o.Bar != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetBar gets a reference to the given string and assigns it to the Bar field.
+func (o *ReadOnlyFirst) SetBar(v string) {
+	o.Bar = &v
+}
+
+// GetBaz returns the Baz field if non-nil, zero value otherwise.
+func (o *ReadOnlyFirst) GetBaz() string {
+	if o == nil || o.Baz == nil {
+		var ret string
+		return ret
+	}
+	return *o.Baz
 }
+
+// GetBazOk returns a tuple with the Baz field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *ReadOnlyFirst) GetBazOk() (string, bool) {
+	if o == nil || o.Baz == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Baz, true
+}
+
+// HasBaz returns a boolean if a field has been set.
+func (o *ReadOnlyFirst) HasBaz() bool {
+	if o != nil && o.Baz != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetBaz gets a reference to the given string and assigns it to the Baz field.
+func (o *ReadOnlyFirst) SetBaz(v string) {
+	o.Baz = &v
+}
+
+
+func (o ReadOnlyFirst) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Bar != nil {
+		toSerialize["bar"] = o.Bar
+	}
+	if o.Baz != nil {
+		toSerialize["baz"] = o.Baz
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_return.go b/samples/client/petstore/go-experimental/go-petstore/model_return.go
index 7851dd851d314c9589c78113770333fe31675974..e53cc31b5f58d6c4bc4248856f187cc348726869 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_return.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_return.go
@@ -8,8 +8,56 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 // Model for testing reserved words
 type Return struct {
-	Return int32 `json:"return,omitempty"`
+	Return *int32 `json:"return,omitempty"`
+
+}
+
+// GetReturn returns the Return field if non-nil, zero value otherwise.
+func (o *Return) GetReturn() int32 {
+	if o == nil || o.Return == nil {
+		var ret int32
+		return ret
+	}
+	return *o.Return
+}
+
+// GetReturnOk returns a tuple with the Return field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Return) GetReturnOk() (int32, bool) {
+	if o == nil || o.Return == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.Return, true
+}
+
+// HasReturn returns a boolean if a field has been set.
+func (o *Return) HasReturn() bool {
+	if o != nil && o.Return != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetReturn gets a reference to the given int32 and assigns it to the Return field.
+func (o *Return) SetReturn(v int32) {
+	o.Return = &v
+}
+
+
+func (o Return) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Return != nil {
+		toSerialize["return"] = o.Return
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_special_model_name.go b/samples/client/petstore/go-experimental/go-petstore/model_special_model_name.go
index f906e91987dc21cfc27cdf7d7d6c1fb4834be104..7e940165d9b61ede5b4a193f8292efe7ddc1fb85 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_special_model_name.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_special_model_name.go
@@ -8,7 +8,55 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type SpecialModelName struct {
-	SpecialPropertyName int64 `json:"$special[property.name],omitempty"`
+	SpecialPropertyName *int64 `json:"$special[property.name],omitempty"`
+
+}
+
+// GetSpecialPropertyName returns the SpecialPropertyName field if non-nil, zero value otherwise.
+func (o *SpecialModelName) GetSpecialPropertyName() int64 {
+	if o == nil || o.SpecialPropertyName == nil {
+		var ret int64
+		return ret
+	}
+	return *o.SpecialPropertyName
+}
+
+// GetSpecialPropertyNameOk returns a tuple with the SpecialPropertyName field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *SpecialModelName) GetSpecialPropertyNameOk() (int64, bool) {
+	if o == nil || o.SpecialPropertyName == nil {
+		var ret int64
+		return ret, false
+	}
+	return *o.SpecialPropertyName, true
+}
+
+// HasSpecialPropertyName returns a boolean if a field has been set.
+func (o *SpecialModelName) HasSpecialPropertyName() bool {
+	if o != nil && o.SpecialPropertyName != nil {
+		return true
+	}
+
+	return false
 }
+
+// SetSpecialPropertyName gets a reference to the given int64 and assigns it to the SpecialPropertyName field.
+func (o *SpecialModelName) SetSpecialPropertyName(v int64) {
+	o.SpecialPropertyName = &v
+}
+
+
+func (o SpecialModelName) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.SpecialPropertyName != nil {
+		toSerialize["$special[property.name]"] = o.SpecialPropertyName
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_tag.go b/samples/client/petstore/go-experimental/go-petstore/model_tag.go
index 37a2b63d4451430e092f35ab375a689f2dcfe940..dc4053da9bde2424e042dd0113cd3e9fe5d9e289 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_tag.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_tag.go
@@ -8,8 +8,93 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type Tag struct {
-	Id int64 `json:"id,omitempty"`
-	Name string `json:"name,omitempty"`
+	Id *int64 `json:"id,omitempty"`
+
+	Name *string `json:"name,omitempty"`
+
+}
+
+// GetId returns the Id field if non-nil, zero value otherwise.
+func (o *Tag) GetId() int64 {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret
+	}
+	return *o.Id
+}
+
+// GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Tag) GetIdOk() (int64, bool) {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret, false
+	}
+	return *o.Id, true
+}
+
+// HasId returns a boolean if a field has been set.
+func (o *Tag) HasId() bool {
+	if o != nil && o.Id != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetId gets a reference to the given int64 and assigns it to the Id field.
+func (o *Tag) SetId(v int64) {
+	o.Id = &v
+}
+
+// GetName returns the Name field if non-nil, zero value otherwise.
+func (o *Tag) GetName() string {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret
+	}
+	return *o.Name
 }
+
+// GetNameOk returns a tuple with the Name field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *Tag) GetNameOk() (string, bool) {
+	if o == nil || o.Name == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Name, true
+}
+
+// HasName returns a boolean if a field has been set.
+func (o *Tag) HasName() bool {
+	if o != nil && o.Name != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetName gets a reference to the given string and assigns it to the Name field.
+func (o *Tag) SetName(v string) {
+	o.Name = &v
+}
+
+
+func (o Tag) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Id != nil {
+		toSerialize["id"] = o.Id
+	}
+	if o.Name != nil {
+		toSerialize["name"] = o.Name
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_type_holder_default.go b/samples/client/petstore/go-experimental/go-petstore/model_type_holder_default.go
index 68e1218ec951da8dd09df40fd9b20fb3eb57e9e2..f1fcc93dd8ad6235e2f692c42615f10399010029 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_type_holder_default.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_type_holder_default.go
@@ -8,11 +8,223 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+	"errors"
+)
 
 type TypeHolderDefault struct {
-	StringItem string `json:"string_item"`
-	NumberItem float32 `json:"number_item"`
-	IntegerItem int32 `json:"integer_item"`
-	BoolItem bool `json:"bool_item"`
-	ArrayItem []int32 `json:"array_item"`
+	StringItem *string `json:"string_item,omitempty"`
+
+	NumberItem *float32 `json:"number_item,omitempty"`
+
+	IntegerItem *int32 `json:"integer_item,omitempty"`
+
+	BoolItem *bool `json:"bool_item,omitempty"`
+
+	ArrayItem *[]int32 `json:"array_item,omitempty"`
+
+}
+
+// GetStringItem returns the StringItem field if non-nil, zero value otherwise.
+func (o *TypeHolderDefault) GetStringItem() string {
+	if o == nil || o.StringItem == nil {
+		var ret string
+		return ret
+	}
+	return *o.StringItem
+}
+
+// GetStringItemOk returns a tuple with the StringItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderDefault) GetStringItemOk() (string, bool) {
+	if o == nil || o.StringItem == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.StringItem, true
+}
+
+// HasStringItem returns a boolean if a field has been set.
+func (o *TypeHolderDefault) HasStringItem() bool {
+	if o != nil && o.StringItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetStringItem gets a reference to the given string and assigns it to the StringItem field.
+func (o *TypeHolderDefault) SetStringItem(v string) {
+	o.StringItem = &v
 }
+
+// GetNumberItem returns the NumberItem field if non-nil, zero value otherwise.
+func (o *TypeHolderDefault) GetNumberItem() float32 {
+	if o == nil || o.NumberItem == nil {
+		var ret float32
+		return ret
+	}
+	return *o.NumberItem
+}
+
+// GetNumberItemOk returns a tuple with the NumberItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderDefault) GetNumberItemOk() (float32, bool) {
+	if o == nil || o.NumberItem == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.NumberItem, true
+}
+
+// HasNumberItem returns a boolean if a field has been set.
+func (o *TypeHolderDefault) HasNumberItem() bool {
+	if o != nil && o.NumberItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNumberItem gets a reference to the given float32 and assigns it to the NumberItem field.
+func (o *TypeHolderDefault) SetNumberItem(v float32) {
+	o.NumberItem = &v
+}
+
+// GetIntegerItem returns the IntegerItem field if non-nil, zero value otherwise.
+func (o *TypeHolderDefault) GetIntegerItem() int32 {
+	if o == nil || o.IntegerItem == nil {
+		var ret int32
+		return ret
+	}
+	return *o.IntegerItem
+}
+
+// GetIntegerItemOk returns a tuple with the IntegerItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderDefault) GetIntegerItemOk() (int32, bool) {
+	if o == nil || o.IntegerItem == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.IntegerItem, true
+}
+
+// HasIntegerItem returns a boolean if a field has been set.
+func (o *TypeHolderDefault) HasIntegerItem() bool {
+	if o != nil && o.IntegerItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetIntegerItem gets a reference to the given int32 and assigns it to the IntegerItem field.
+func (o *TypeHolderDefault) SetIntegerItem(v int32) {
+	o.IntegerItem = &v
+}
+
+// GetBoolItem returns the BoolItem field if non-nil, zero value otherwise.
+func (o *TypeHolderDefault) GetBoolItem() bool {
+	if o == nil || o.BoolItem == nil {
+		var ret bool
+		return ret
+	}
+	return *o.BoolItem
+}
+
+// GetBoolItemOk returns a tuple with the BoolItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderDefault) GetBoolItemOk() (bool, bool) {
+	if o == nil || o.BoolItem == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.BoolItem, true
+}
+
+// HasBoolItem returns a boolean if a field has been set.
+func (o *TypeHolderDefault) HasBoolItem() bool {
+	if o != nil && o.BoolItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetBoolItem gets a reference to the given bool and assigns it to the BoolItem field.
+func (o *TypeHolderDefault) SetBoolItem(v bool) {
+	o.BoolItem = &v
+}
+
+// GetArrayItem returns the ArrayItem field if non-nil, zero value otherwise.
+func (o *TypeHolderDefault) GetArrayItem() []int32 {
+	if o == nil || o.ArrayItem == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.ArrayItem
+}
+
+// GetArrayItemOk returns a tuple with the ArrayItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderDefault) GetArrayItemOk() ([]int32, bool) {
+	if o == nil || o.ArrayItem == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.ArrayItem, true
+}
+
+// HasArrayItem returns a boolean if a field has been set.
+func (o *TypeHolderDefault) HasArrayItem() bool {
+	if o != nil && o.ArrayItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetArrayItem gets a reference to the given []int32 and assigns it to the ArrayItem field.
+func (o *TypeHolderDefault) SetArrayItem(v []int32) {
+	o.ArrayItem = &v
+}
+
+
+func (o TypeHolderDefault) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.StringItem == nil {
+		return nil, errors.New("StringItem is required and not nullable, but was not set on TypeHolderDefault")
+	}
+	if o.StringItem != nil {
+		toSerialize["string_item"] = o.StringItem
+	}
+	if o.NumberItem == nil {
+		return nil, errors.New("NumberItem is required and not nullable, but was not set on TypeHolderDefault")
+	}
+	if o.NumberItem != nil {
+		toSerialize["number_item"] = o.NumberItem
+	}
+	if o.IntegerItem == nil {
+		return nil, errors.New("IntegerItem is required and not nullable, but was not set on TypeHolderDefault")
+	}
+	if o.IntegerItem != nil {
+		toSerialize["integer_item"] = o.IntegerItem
+	}
+	if o.BoolItem == nil {
+		return nil, errors.New("BoolItem is required and not nullable, but was not set on TypeHolderDefault")
+	}
+	if o.BoolItem != nil {
+		toSerialize["bool_item"] = o.BoolItem
+	}
+	if o.ArrayItem == nil {
+		return nil, errors.New("ArrayItem is required and not nullable, but was not set on TypeHolderDefault")
+	}
+	if o.ArrayItem != nil {
+		toSerialize["array_item"] = o.ArrayItem
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_type_holder_example.go b/samples/client/petstore/go-experimental/go-petstore/model_type_holder_example.go
index e129bb6a765f2b7df2d4d28b83e118950d46b3b3..0fe346c7cd1ef86ee9e652da1e7516b5aa83e75b 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_type_holder_example.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_type_holder_example.go
@@ -8,11 +8,223 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+	"errors"
+)
 
 type TypeHolderExample struct {
-	StringItem string `json:"string_item"`
-	NumberItem float32 `json:"number_item"`
-	IntegerItem int32 `json:"integer_item"`
-	BoolItem bool `json:"bool_item"`
-	ArrayItem []int32 `json:"array_item"`
+	StringItem *string `json:"string_item,omitempty"`
+
+	NumberItem *float32 `json:"number_item,omitempty"`
+
+	IntegerItem *int32 `json:"integer_item,omitempty"`
+
+	BoolItem *bool `json:"bool_item,omitempty"`
+
+	ArrayItem *[]int32 `json:"array_item,omitempty"`
+
+}
+
+// GetStringItem returns the StringItem field if non-nil, zero value otherwise.
+func (o *TypeHolderExample) GetStringItem() string {
+	if o == nil || o.StringItem == nil {
+		var ret string
+		return ret
+	}
+	return *o.StringItem
+}
+
+// GetStringItemOk returns a tuple with the StringItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderExample) GetStringItemOk() (string, bool) {
+	if o == nil || o.StringItem == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.StringItem, true
+}
+
+// HasStringItem returns a boolean if a field has been set.
+func (o *TypeHolderExample) HasStringItem() bool {
+	if o != nil && o.StringItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetStringItem gets a reference to the given string and assigns it to the StringItem field.
+func (o *TypeHolderExample) SetStringItem(v string) {
+	o.StringItem = &v
 }
+
+// GetNumberItem returns the NumberItem field if non-nil, zero value otherwise.
+func (o *TypeHolderExample) GetNumberItem() float32 {
+	if o == nil || o.NumberItem == nil {
+		var ret float32
+		return ret
+	}
+	return *o.NumberItem
+}
+
+// GetNumberItemOk returns a tuple with the NumberItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderExample) GetNumberItemOk() (float32, bool) {
+	if o == nil || o.NumberItem == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.NumberItem, true
+}
+
+// HasNumberItem returns a boolean if a field has been set.
+func (o *TypeHolderExample) HasNumberItem() bool {
+	if o != nil && o.NumberItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNumberItem gets a reference to the given float32 and assigns it to the NumberItem field.
+func (o *TypeHolderExample) SetNumberItem(v float32) {
+	o.NumberItem = &v
+}
+
+// GetIntegerItem returns the IntegerItem field if non-nil, zero value otherwise.
+func (o *TypeHolderExample) GetIntegerItem() int32 {
+	if o == nil || o.IntegerItem == nil {
+		var ret int32
+		return ret
+	}
+	return *o.IntegerItem
+}
+
+// GetIntegerItemOk returns a tuple with the IntegerItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderExample) GetIntegerItemOk() (int32, bool) {
+	if o == nil || o.IntegerItem == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.IntegerItem, true
+}
+
+// HasIntegerItem returns a boolean if a field has been set.
+func (o *TypeHolderExample) HasIntegerItem() bool {
+	if o != nil && o.IntegerItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetIntegerItem gets a reference to the given int32 and assigns it to the IntegerItem field.
+func (o *TypeHolderExample) SetIntegerItem(v int32) {
+	o.IntegerItem = &v
+}
+
+// GetBoolItem returns the BoolItem field if non-nil, zero value otherwise.
+func (o *TypeHolderExample) GetBoolItem() bool {
+	if o == nil || o.BoolItem == nil {
+		var ret bool
+		return ret
+	}
+	return *o.BoolItem
+}
+
+// GetBoolItemOk returns a tuple with the BoolItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderExample) GetBoolItemOk() (bool, bool) {
+	if o == nil || o.BoolItem == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.BoolItem, true
+}
+
+// HasBoolItem returns a boolean if a field has been set.
+func (o *TypeHolderExample) HasBoolItem() bool {
+	if o != nil && o.BoolItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetBoolItem gets a reference to the given bool and assigns it to the BoolItem field.
+func (o *TypeHolderExample) SetBoolItem(v bool) {
+	o.BoolItem = &v
+}
+
+// GetArrayItem returns the ArrayItem field if non-nil, zero value otherwise.
+func (o *TypeHolderExample) GetArrayItem() []int32 {
+	if o == nil || o.ArrayItem == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.ArrayItem
+}
+
+// GetArrayItemOk returns a tuple with the ArrayItem field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *TypeHolderExample) GetArrayItemOk() ([]int32, bool) {
+	if o == nil || o.ArrayItem == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.ArrayItem, true
+}
+
+// HasArrayItem returns a boolean if a field has been set.
+func (o *TypeHolderExample) HasArrayItem() bool {
+	if o != nil && o.ArrayItem != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetArrayItem gets a reference to the given []int32 and assigns it to the ArrayItem field.
+func (o *TypeHolderExample) SetArrayItem(v []int32) {
+	o.ArrayItem = &v
+}
+
+
+func (o TypeHolderExample) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.StringItem == nil {
+		return nil, errors.New("StringItem is required and not nullable, but was not set on TypeHolderExample")
+	}
+	if o.StringItem != nil {
+		toSerialize["string_item"] = o.StringItem
+	}
+	if o.NumberItem == nil {
+		return nil, errors.New("NumberItem is required and not nullable, but was not set on TypeHolderExample")
+	}
+	if o.NumberItem != nil {
+		toSerialize["number_item"] = o.NumberItem
+	}
+	if o.IntegerItem == nil {
+		return nil, errors.New("IntegerItem is required and not nullable, but was not set on TypeHolderExample")
+	}
+	if o.IntegerItem != nil {
+		toSerialize["integer_item"] = o.IntegerItem
+	}
+	if o.BoolItem == nil {
+		return nil, errors.New("BoolItem is required and not nullable, but was not set on TypeHolderExample")
+	}
+	if o.BoolItem != nil {
+		toSerialize["bool_item"] = o.BoolItem
+	}
+	if o.ArrayItem == nil {
+		return nil, errors.New("ArrayItem is required and not nullable, but was not set on TypeHolderExample")
+	}
+	if o.ArrayItem != nil {
+		toSerialize["array_item"] = o.ArrayItem
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_user.go b/samples/client/petstore/go-experimental/go-petstore/model_user.go
index caff75ebc2c5dcd04216caf478f4c82a22b1e51b..925f82d582be394e2a6c784bb954e5aa58af792e 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_user.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_user.go
@@ -8,15 +8,322 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type User struct {
-	Id int64 `json:"id,omitempty"`
-	Username string `json:"username,omitempty"`
-	FirstName string `json:"firstName,omitempty"`
-	LastName string `json:"lastName,omitempty"`
-	Email string `json:"email,omitempty"`
-	Password string `json:"password,omitempty"`
-	Phone string `json:"phone,omitempty"`
+	Id *int64 `json:"id,omitempty"`
+
+	Username *string `json:"username,omitempty"`
+
+	FirstName *string `json:"firstName,omitempty"`
+
+	LastName *string `json:"lastName,omitempty"`
+
+	Email *string `json:"email,omitempty"`
+
+	Password *string `json:"password,omitempty"`
+
+	Phone *string `json:"phone,omitempty"`
+
 	// User Status
-	UserStatus int32 `json:"userStatus,omitempty"`
+	UserStatus *int32 `json:"userStatus,omitempty"`
+
+}
+
+// GetId returns the Id field if non-nil, zero value otherwise.
+func (o *User) GetId() int64 {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret
+	}
+	return *o.Id
+}
+
+// GetIdOk returns a tuple with the Id field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *User) GetIdOk() (int64, bool) {
+	if o == nil || o.Id == nil {
+		var ret int64
+		return ret, false
+	}
+	return *o.Id, true
+}
+
+// HasId returns a boolean if a field has been set.
+func (o *User) HasId() bool {
+	if o != nil && o.Id != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetId gets a reference to the given int64 and assigns it to the Id field.
+func (o *User) SetId(v int64) {
+	o.Id = &v
 }
+
+// GetUsername returns the Username field if non-nil, zero value otherwise.
+func (o *User) GetUsername() string {
+	if o == nil || o.Username == nil {
+		var ret string
+		return ret
+	}
+	return *o.Username
+}
+
+// GetUsernameOk returns a tuple with the Username field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *User) GetUsernameOk() (string, bool) {
+	if o == nil || o.Username == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Username, true
+}
+
+// HasUsername returns a boolean if a field has been set.
+func (o *User) HasUsername() bool {
+	if o != nil && o.Username != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetUsername gets a reference to the given string and assigns it to the Username field.
+func (o *User) SetUsername(v string) {
+	o.Username = &v
+}
+
+// GetFirstName returns the FirstName field if non-nil, zero value otherwise.
+func (o *User) GetFirstName() string {
+	if o == nil || o.FirstName == nil {
+		var ret string
+		return ret
+	}
+	return *o.FirstName
+}
+
+// GetFirstNameOk returns a tuple with the FirstName field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *User) GetFirstNameOk() (string, bool) {
+	if o == nil || o.FirstName == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.FirstName, true
+}
+
+// HasFirstName returns a boolean if a field has been set.
+func (o *User) HasFirstName() bool {
+	if o != nil && o.FirstName != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetFirstName gets a reference to the given string and assigns it to the FirstName field.
+func (o *User) SetFirstName(v string) {
+	o.FirstName = &v
+}
+
+// GetLastName returns the LastName field if non-nil, zero value otherwise.
+func (o *User) GetLastName() string {
+	if o == nil || o.LastName == nil {
+		var ret string
+		return ret
+	}
+	return *o.LastName
+}
+
+// GetLastNameOk returns a tuple with the LastName field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *User) GetLastNameOk() (string, bool) {
+	if o == nil || o.LastName == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.LastName, true
+}
+
+// HasLastName returns a boolean if a field has been set.
+func (o *User) HasLastName() bool {
+	if o != nil && o.LastName != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetLastName gets a reference to the given string and assigns it to the LastName field.
+func (o *User) SetLastName(v string) {
+	o.LastName = &v
+}
+
+// GetEmail returns the Email field if non-nil, zero value otherwise.
+func (o *User) GetEmail() string {
+	if o == nil || o.Email == nil {
+		var ret string
+		return ret
+	}
+	return *o.Email
+}
+
+// GetEmailOk returns a tuple with the Email field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *User) GetEmailOk() (string, bool) {
+	if o == nil || o.Email == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Email, true
+}
+
+// HasEmail returns a boolean if a field has been set.
+func (o *User) HasEmail() bool {
+	if o != nil && o.Email != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetEmail gets a reference to the given string and assigns it to the Email field.
+func (o *User) SetEmail(v string) {
+	o.Email = &v
+}
+
+// GetPassword returns the Password field if non-nil, zero value otherwise.
+func (o *User) GetPassword() string {
+	if o == nil || o.Password == nil {
+		var ret string
+		return ret
+	}
+	return *o.Password
+}
+
+// GetPasswordOk returns a tuple with the Password field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *User) GetPasswordOk() (string, bool) {
+	if o == nil || o.Password == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Password, true
+}
+
+// HasPassword returns a boolean if a field has been set.
+func (o *User) HasPassword() bool {
+	if o != nil && o.Password != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPassword gets a reference to the given string and assigns it to the Password field.
+func (o *User) SetPassword(v string) {
+	o.Password = &v
+}
+
+// GetPhone returns the Phone field if non-nil, zero value otherwise.
+func (o *User) GetPhone() string {
+	if o == nil || o.Phone == nil {
+		var ret string
+		return ret
+	}
+	return *o.Phone
+}
+
+// GetPhoneOk returns a tuple with the Phone field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *User) GetPhoneOk() (string, bool) {
+	if o == nil || o.Phone == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.Phone, true
+}
+
+// HasPhone returns a boolean if a field has been set.
+func (o *User) HasPhone() bool {
+	if o != nil && o.Phone != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPhone gets a reference to the given string and assigns it to the Phone field.
+func (o *User) SetPhone(v string) {
+	o.Phone = &v
+}
+
+// GetUserStatus returns the UserStatus field if non-nil, zero value otherwise.
+func (o *User) GetUserStatus() int32 {
+	if o == nil || o.UserStatus == nil {
+		var ret int32
+		return ret
+	}
+	return *o.UserStatus
+}
+
+// GetUserStatusOk returns a tuple with the UserStatus field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *User) GetUserStatusOk() (int32, bool) {
+	if o == nil || o.UserStatus == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.UserStatus, true
+}
+
+// HasUserStatus returns a boolean if a field has been set.
+func (o *User) HasUserStatus() bool {
+	if o != nil && o.UserStatus != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetUserStatus gets a reference to the given int32 and assigns it to the UserStatus field.
+func (o *User) SetUserStatus(v int32) {
+	o.UserStatus = &v
+}
+
+
+func (o User) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.Id != nil {
+		toSerialize["id"] = o.Id
+	}
+	if o.Username != nil {
+		toSerialize["username"] = o.Username
+	}
+	if o.FirstName != nil {
+		toSerialize["firstName"] = o.FirstName
+	}
+	if o.LastName != nil {
+		toSerialize["lastName"] = o.LastName
+	}
+	if o.Email != nil {
+		toSerialize["email"] = o.Email
+	}
+	if o.Password != nil {
+		toSerialize["password"] = o.Password
+	}
+	if o.Phone != nil {
+		toSerialize["phone"] = o.Phone
+	}
+	if o.UserStatus != nil {
+		toSerialize["userStatus"] = o.UserStatus
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/model_xml_item.go b/samples/client/petstore/go-experimental/go-petstore/model_xml_item.go
index a623bda5c74283ee3e596c521dd71a2eb34fc7d6..2f0f8f89c47eb27e92577fbcf720eb923805ce1c 100644
--- a/samples/client/petstore/go-experimental/go-petstore/model_xml_item.go
+++ b/samples/client/petstore/go-experimental/go-petstore/model_xml_item.go
@@ -8,35 +8,1119 @@
  */
 
 package petstore
+import (
+	"encoding/json"
+)
 
 type XmlItem struct {
-	AttributeString string `json:"attribute_string,omitempty"`
-	AttributeNumber float32 `json:"attribute_number,omitempty"`
-	AttributeInteger int32 `json:"attribute_integer,omitempty"`
-	AttributeBoolean bool `json:"attribute_boolean,omitempty"`
-	WrappedArray []int32 `json:"wrapped_array,omitempty"`
-	NameString string `json:"name_string,omitempty"`
-	NameNumber float32 `json:"name_number,omitempty"`
-	NameInteger int32 `json:"name_integer,omitempty"`
-	NameBoolean bool `json:"name_boolean,omitempty"`
-	NameArray []int32 `json:"name_array,omitempty"`
-	NameWrappedArray []int32 `json:"name_wrapped_array,omitempty"`
-	PrefixString string `json:"prefix_string,omitempty"`
-	PrefixNumber float32 `json:"prefix_number,omitempty"`
-	PrefixInteger int32 `json:"prefix_integer,omitempty"`
-	PrefixBoolean bool `json:"prefix_boolean,omitempty"`
-	PrefixArray []int32 `json:"prefix_array,omitempty"`
-	PrefixWrappedArray []int32 `json:"prefix_wrapped_array,omitempty"`
-	NamespaceString string `json:"namespace_string,omitempty"`
-	NamespaceNumber float32 `json:"namespace_number,omitempty"`
-	NamespaceInteger int32 `json:"namespace_integer,omitempty"`
-	NamespaceBoolean bool `json:"namespace_boolean,omitempty"`
-	NamespaceArray []int32 `json:"namespace_array,omitempty"`
-	NamespaceWrappedArray []int32 `json:"namespace_wrapped_array,omitempty"`
-	PrefixNsString string `json:"prefix_ns_string,omitempty"`
-	PrefixNsNumber float32 `json:"prefix_ns_number,omitempty"`
-	PrefixNsInteger int32 `json:"prefix_ns_integer,omitempty"`
-	PrefixNsBoolean bool `json:"prefix_ns_boolean,omitempty"`
-	PrefixNsArray []int32 `json:"prefix_ns_array,omitempty"`
-	PrefixNsWrappedArray []int32 `json:"prefix_ns_wrapped_array,omitempty"`
+	AttributeString *string `json:"attribute_string,omitempty"`
+
+	AttributeNumber *float32 `json:"attribute_number,omitempty"`
+
+	AttributeInteger *int32 `json:"attribute_integer,omitempty"`
+
+	AttributeBoolean *bool `json:"attribute_boolean,omitempty"`
+
+	WrappedArray *[]int32 `json:"wrapped_array,omitempty"`
+
+	NameString *string `json:"name_string,omitempty"`
+
+	NameNumber *float32 `json:"name_number,omitempty"`
+
+	NameInteger *int32 `json:"name_integer,omitempty"`
+
+	NameBoolean *bool `json:"name_boolean,omitempty"`
+
+	NameArray *[]int32 `json:"name_array,omitempty"`
+
+	NameWrappedArray *[]int32 `json:"name_wrapped_array,omitempty"`
+
+	PrefixString *string `json:"prefix_string,omitempty"`
+
+	PrefixNumber *float32 `json:"prefix_number,omitempty"`
+
+	PrefixInteger *int32 `json:"prefix_integer,omitempty"`
+
+	PrefixBoolean *bool `json:"prefix_boolean,omitempty"`
+
+	PrefixArray *[]int32 `json:"prefix_array,omitempty"`
+
+	PrefixWrappedArray *[]int32 `json:"prefix_wrapped_array,omitempty"`
+
+	NamespaceString *string `json:"namespace_string,omitempty"`
+
+	NamespaceNumber *float32 `json:"namespace_number,omitempty"`
+
+	NamespaceInteger *int32 `json:"namespace_integer,omitempty"`
+
+	NamespaceBoolean *bool `json:"namespace_boolean,omitempty"`
+
+	NamespaceArray *[]int32 `json:"namespace_array,omitempty"`
+
+	NamespaceWrappedArray *[]int32 `json:"namespace_wrapped_array,omitempty"`
+
+	PrefixNsString *string `json:"prefix_ns_string,omitempty"`
+
+	PrefixNsNumber *float32 `json:"prefix_ns_number,omitempty"`
+
+	PrefixNsInteger *int32 `json:"prefix_ns_integer,omitempty"`
+
+	PrefixNsBoolean *bool `json:"prefix_ns_boolean,omitempty"`
+
+	PrefixNsArray *[]int32 `json:"prefix_ns_array,omitempty"`
+
+	PrefixNsWrappedArray *[]int32 `json:"prefix_ns_wrapped_array,omitempty"`
+
+}
+
+// GetAttributeString returns the AttributeString field if non-nil, zero value otherwise.
+func (o *XmlItem) GetAttributeString() string {
+	if o == nil || o.AttributeString == nil {
+		var ret string
+		return ret
+	}
+	return *o.AttributeString
+}
+
+// GetAttributeStringOk returns a tuple with the AttributeString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetAttributeStringOk() (string, bool) {
+	if o == nil || o.AttributeString == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.AttributeString, true
+}
+
+// HasAttributeString returns a boolean if a field has been set.
+func (o *XmlItem) HasAttributeString() bool {
+	if o != nil && o.AttributeString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetAttributeString gets a reference to the given string and assigns it to the AttributeString field.
+func (o *XmlItem) SetAttributeString(v string) {
+	o.AttributeString = &v
+}
+
+// GetAttributeNumber returns the AttributeNumber field if non-nil, zero value otherwise.
+func (o *XmlItem) GetAttributeNumber() float32 {
+	if o == nil || o.AttributeNumber == nil {
+		var ret float32
+		return ret
+	}
+	return *o.AttributeNumber
+}
+
+// GetAttributeNumberOk returns a tuple with the AttributeNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetAttributeNumberOk() (float32, bool) {
+	if o == nil || o.AttributeNumber == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.AttributeNumber, true
+}
+
+// HasAttributeNumber returns a boolean if a field has been set.
+func (o *XmlItem) HasAttributeNumber() bool {
+	if o != nil && o.AttributeNumber != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetAttributeNumber gets a reference to the given float32 and assigns it to the AttributeNumber field.
+func (o *XmlItem) SetAttributeNumber(v float32) {
+	o.AttributeNumber = &v
+}
+
+// GetAttributeInteger returns the AttributeInteger field if non-nil, zero value otherwise.
+func (o *XmlItem) GetAttributeInteger() int32 {
+	if o == nil || o.AttributeInteger == nil {
+		var ret int32
+		return ret
+	}
+	return *o.AttributeInteger
+}
+
+// GetAttributeIntegerOk returns a tuple with the AttributeInteger field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetAttributeIntegerOk() (int32, bool) {
+	if o == nil || o.AttributeInteger == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.AttributeInteger, true
+}
+
+// HasAttributeInteger returns a boolean if a field has been set.
+func (o *XmlItem) HasAttributeInteger() bool {
+	if o != nil && o.AttributeInteger != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetAttributeInteger gets a reference to the given int32 and assigns it to the AttributeInteger field.
+func (o *XmlItem) SetAttributeInteger(v int32) {
+	o.AttributeInteger = &v
+}
+
+// GetAttributeBoolean returns the AttributeBoolean field if non-nil, zero value otherwise.
+func (o *XmlItem) GetAttributeBoolean() bool {
+	if o == nil || o.AttributeBoolean == nil {
+		var ret bool
+		return ret
+	}
+	return *o.AttributeBoolean
+}
+
+// GetAttributeBooleanOk returns a tuple with the AttributeBoolean field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetAttributeBooleanOk() (bool, bool) {
+	if o == nil || o.AttributeBoolean == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.AttributeBoolean, true
+}
+
+// HasAttributeBoolean returns a boolean if a field has been set.
+func (o *XmlItem) HasAttributeBoolean() bool {
+	if o != nil && o.AttributeBoolean != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetAttributeBoolean gets a reference to the given bool and assigns it to the AttributeBoolean field.
+func (o *XmlItem) SetAttributeBoolean(v bool) {
+	o.AttributeBoolean = &v
+}
+
+// GetWrappedArray returns the WrappedArray field if non-nil, zero value otherwise.
+func (o *XmlItem) GetWrappedArray() []int32 {
+	if o == nil || o.WrappedArray == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.WrappedArray
+}
+
+// GetWrappedArrayOk returns a tuple with the WrappedArray field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetWrappedArrayOk() ([]int32, bool) {
+	if o == nil || o.WrappedArray == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.WrappedArray, true
+}
+
+// HasWrappedArray returns a boolean if a field has been set.
+func (o *XmlItem) HasWrappedArray() bool {
+	if o != nil && o.WrappedArray != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetWrappedArray gets a reference to the given []int32 and assigns it to the WrappedArray field.
+func (o *XmlItem) SetWrappedArray(v []int32) {
+	o.WrappedArray = &v
+}
+
+// GetNameString returns the NameString field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNameString() string {
+	if o == nil || o.NameString == nil {
+		var ret string
+		return ret
+	}
+	return *o.NameString
+}
+
+// GetNameStringOk returns a tuple with the NameString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNameStringOk() (string, bool) {
+	if o == nil || o.NameString == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.NameString, true
+}
+
+// HasNameString returns a boolean if a field has been set.
+func (o *XmlItem) HasNameString() bool {
+	if o != nil && o.NameString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNameString gets a reference to the given string and assigns it to the NameString field.
+func (o *XmlItem) SetNameString(v string) {
+	o.NameString = &v
+}
+
+// GetNameNumber returns the NameNumber field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNameNumber() float32 {
+	if o == nil || o.NameNumber == nil {
+		var ret float32
+		return ret
+	}
+	return *o.NameNumber
+}
+
+// GetNameNumberOk returns a tuple with the NameNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNameNumberOk() (float32, bool) {
+	if o == nil || o.NameNumber == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.NameNumber, true
+}
+
+// HasNameNumber returns a boolean if a field has been set.
+func (o *XmlItem) HasNameNumber() bool {
+	if o != nil && o.NameNumber != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNameNumber gets a reference to the given float32 and assigns it to the NameNumber field.
+func (o *XmlItem) SetNameNumber(v float32) {
+	o.NameNumber = &v
+}
+
+// GetNameInteger returns the NameInteger field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNameInteger() int32 {
+	if o == nil || o.NameInteger == nil {
+		var ret int32
+		return ret
+	}
+	return *o.NameInteger
+}
+
+// GetNameIntegerOk returns a tuple with the NameInteger field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNameIntegerOk() (int32, bool) {
+	if o == nil || o.NameInteger == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.NameInteger, true
+}
+
+// HasNameInteger returns a boolean if a field has been set.
+func (o *XmlItem) HasNameInteger() bool {
+	if o != nil && o.NameInteger != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNameInteger gets a reference to the given int32 and assigns it to the NameInteger field.
+func (o *XmlItem) SetNameInteger(v int32) {
+	o.NameInteger = &v
+}
+
+// GetNameBoolean returns the NameBoolean field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNameBoolean() bool {
+	if o == nil || o.NameBoolean == nil {
+		var ret bool
+		return ret
+	}
+	return *o.NameBoolean
+}
+
+// GetNameBooleanOk returns a tuple with the NameBoolean field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNameBooleanOk() (bool, bool) {
+	if o == nil || o.NameBoolean == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.NameBoolean, true
+}
+
+// HasNameBoolean returns a boolean if a field has been set.
+func (o *XmlItem) HasNameBoolean() bool {
+	if o != nil && o.NameBoolean != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNameBoolean gets a reference to the given bool and assigns it to the NameBoolean field.
+func (o *XmlItem) SetNameBoolean(v bool) {
+	o.NameBoolean = &v
+}
+
+// GetNameArray returns the NameArray field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNameArray() []int32 {
+	if o == nil || o.NameArray == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.NameArray
+}
+
+// GetNameArrayOk returns a tuple with the NameArray field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNameArrayOk() ([]int32, bool) {
+	if o == nil || o.NameArray == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.NameArray, true
+}
+
+// HasNameArray returns a boolean if a field has been set.
+func (o *XmlItem) HasNameArray() bool {
+	if o != nil && o.NameArray != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNameArray gets a reference to the given []int32 and assigns it to the NameArray field.
+func (o *XmlItem) SetNameArray(v []int32) {
+	o.NameArray = &v
+}
+
+// GetNameWrappedArray returns the NameWrappedArray field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNameWrappedArray() []int32 {
+	if o == nil || o.NameWrappedArray == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.NameWrappedArray
+}
+
+// GetNameWrappedArrayOk returns a tuple with the NameWrappedArray field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNameWrappedArrayOk() ([]int32, bool) {
+	if o == nil || o.NameWrappedArray == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.NameWrappedArray, true
+}
+
+// HasNameWrappedArray returns a boolean if a field has been set.
+func (o *XmlItem) HasNameWrappedArray() bool {
+	if o != nil && o.NameWrappedArray != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNameWrappedArray gets a reference to the given []int32 and assigns it to the NameWrappedArray field.
+func (o *XmlItem) SetNameWrappedArray(v []int32) {
+	o.NameWrappedArray = &v
+}
+
+// GetPrefixString returns the PrefixString field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixString() string {
+	if o == nil || o.PrefixString == nil {
+		var ret string
+		return ret
+	}
+	return *o.PrefixString
+}
+
+// GetPrefixStringOk returns a tuple with the PrefixString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixStringOk() (string, bool) {
+	if o == nil || o.PrefixString == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.PrefixString, true
+}
+
+// HasPrefixString returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixString() bool {
+	if o != nil && o.PrefixString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixString gets a reference to the given string and assigns it to the PrefixString field.
+func (o *XmlItem) SetPrefixString(v string) {
+	o.PrefixString = &v
+}
+
+// GetPrefixNumber returns the PrefixNumber field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixNumber() float32 {
+	if o == nil || o.PrefixNumber == nil {
+		var ret float32
+		return ret
+	}
+	return *o.PrefixNumber
+}
+
+// GetPrefixNumberOk returns a tuple with the PrefixNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixNumberOk() (float32, bool) {
+	if o == nil || o.PrefixNumber == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.PrefixNumber, true
+}
+
+// HasPrefixNumber returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixNumber() bool {
+	if o != nil && o.PrefixNumber != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixNumber gets a reference to the given float32 and assigns it to the PrefixNumber field.
+func (o *XmlItem) SetPrefixNumber(v float32) {
+	o.PrefixNumber = &v
+}
+
+// GetPrefixInteger returns the PrefixInteger field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixInteger() int32 {
+	if o == nil || o.PrefixInteger == nil {
+		var ret int32
+		return ret
+	}
+	return *o.PrefixInteger
 }
+
+// GetPrefixIntegerOk returns a tuple with the PrefixInteger field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixIntegerOk() (int32, bool) {
+	if o == nil || o.PrefixInteger == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.PrefixInteger, true
+}
+
+// HasPrefixInteger returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixInteger() bool {
+	if o != nil && o.PrefixInteger != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixInteger gets a reference to the given int32 and assigns it to the PrefixInteger field.
+func (o *XmlItem) SetPrefixInteger(v int32) {
+	o.PrefixInteger = &v
+}
+
+// GetPrefixBoolean returns the PrefixBoolean field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixBoolean() bool {
+	if o == nil || o.PrefixBoolean == nil {
+		var ret bool
+		return ret
+	}
+	return *o.PrefixBoolean
+}
+
+// GetPrefixBooleanOk returns a tuple with the PrefixBoolean field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixBooleanOk() (bool, bool) {
+	if o == nil || o.PrefixBoolean == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.PrefixBoolean, true
+}
+
+// HasPrefixBoolean returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixBoolean() bool {
+	if o != nil && o.PrefixBoolean != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixBoolean gets a reference to the given bool and assigns it to the PrefixBoolean field.
+func (o *XmlItem) SetPrefixBoolean(v bool) {
+	o.PrefixBoolean = &v
+}
+
+// GetPrefixArray returns the PrefixArray field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixArray() []int32 {
+	if o == nil || o.PrefixArray == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.PrefixArray
+}
+
+// GetPrefixArrayOk returns a tuple with the PrefixArray field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixArrayOk() ([]int32, bool) {
+	if o == nil || o.PrefixArray == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.PrefixArray, true
+}
+
+// HasPrefixArray returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixArray() bool {
+	if o != nil && o.PrefixArray != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixArray gets a reference to the given []int32 and assigns it to the PrefixArray field.
+func (o *XmlItem) SetPrefixArray(v []int32) {
+	o.PrefixArray = &v
+}
+
+// GetPrefixWrappedArray returns the PrefixWrappedArray field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixWrappedArray() []int32 {
+	if o == nil || o.PrefixWrappedArray == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.PrefixWrappedArray
+}
+
+// GetPrefixWrappedArrayOk returns a tuple with the PrefixWrappedArray field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixWrappedArrayOk() ([]int32, bool) {
+	if o == nil || o.PrefixWrappedArray == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.PrefixWrappedArray, true
+}
+
+// HasPrefixWrappedArray returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixWrappedArray() bool {
+	if o != nil && o.PrefixWrappedArray != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixWrappedArray gets a reference to the given []int32 and assigns it to the PrefixWrappedArray field.
+func (o *XmlItem) SetPrefixWrappedArray(v []int32) {
+	o.PrefixWrappedArray = &v
+}
+
+// GetNamespaceString returns the NamespaceString field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNamespaceString() string {
+	if o == nil || o.NamespaceString == nil {
+		var ret string
+		return ret
+	}
+	return *o.NamespaceString
+}
+
+// GetNamespaceStringOk returns a tuple with the NamespaceString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNamespaceStringOk() (string, bool) {
+	if o == nil || o.NamespaceString == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.NamespaceString, true
+}
+
+// HasNamespaceString returns a boolean if a field has been set.
+func (o *XmlItem) HasNamespaceString() bool {
+	if o != nil && o.NamespaceString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNamespaceString gets a reference to the given string and assigns it to the NamespaceString field.
+func (o *XmlItem) SetNamespaceString(v string) {
+	o.NamespaceString = &v
+}
+
+// GetNamespaceNumber returns the NamespaceNumber field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNamespaceNumber() float32 {
+	if o == nil || o.NamespaceNumber == nil {
+		var ret float32
+		return ret
+	}
+	return *o.NamespaceNumber
+}
+
+// GetNamespaceNumberOk returns a tuple with the NamespaceNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNamespaceNumberOk() (float32, bool) {
+	if o == nil || o.NamespaceNumber == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.NamespaceNumber, true
+}
+
+// HasNamespaceNumber returns a boolean if a field has been set.
+func (o *XmlItem) HasNamespaceNumber() bool {
+	if o != nil && o.NamespaceNumber != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNamespaceNumber gets a reference to the given float32 and assigns it to the NamespaceNumber field.
+func (o *XmlItem) SetNamespaceNumber(v float32) {
+	o.NamespaceNumber = &v
+}
+
+// GetNamespaceInteger returns the NamespaceInteger field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNamespaceInteger() int32 {
+	if o == nil || o.NamespaceInteger == nil {
+		var ret int32
+		return ret
+	}
+	return *o.NamespaceInteger
+}
+
+// GetNamespaceIntegerOk returns a tuple with the NamespaceInteger field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNamespaceIntegerOk() (int32, bool) {
+	if o == nil || o.NamespaceInteger == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.NamespaceInteger, true
+}
+
+// HasNamespaceInteger returns a boolean if a field has been set.
+func (o *XmlItem) HasNamespaceInteger() bool {
+	if o != nil && o.NamespaceInteger != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNamespaceInteger gets a reference to the given int32 and assigns it to the NamespaceInteger field.
+func (o *XmlItem) SetNamespaceInteger(v int32) {
+	o.NamespaceInteger = &v
+}
+
+// GetNamespaceBoolean returns the NamespaceBoolean field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNamespaceBoolean() bool {
+	if o == nil || o.NamespaceBoolean == nil {
+		var ret bool
+		return ret
+	}
+	return *o.NamespaceBoolean
+}
+
+// GetNamespaceBooleanOk returns a tuple with the NamespaceBoolean field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNamespaceBooleanOk() (bool, bool) {
+	if o == nil || o.NamespaceBoolean == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.NamespaceBoolean, true
+}
+
+// HasNamespaceBoolean returns a boolean if a field has been set.
+func (o *XmlItem) HasNamespaceBoolean() bool {
+	if o != nil && o.NamespaceBoolean != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNamespaceBoolean gets a reference to the given bool and assigns it to the NamespaceBoolean field.
+func (o *XmlItem) SetNamespaceBoolean(v bool) {
+	o.NamespaceBoolean = &v
+}
+
+// GetNamespaceArray returns the NamespaceArray field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNamespaceArray() []int32 {
+	if o == nil || o.NamespaceArray == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.NamespaceArray
+}
+
+// GetNamespaceArrayOk returns a tuple with the NamespaceArray field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNamespaceArrayOk() ([]int32, bool) {
+	if o == nil || o.NamespaceArray == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.NamespaceArray, true
+}
+
+// HasNamespaceArray returns a boolean if a field has been set.
+func (o *XmlItem) HasNamespaceArray() bool {
+	if o != nil && o.NamespaceArray != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNamespaceArray gets a reference to the given []int32 and assigns it to the NamespaceArray field.
+func (o *XmlItem) SetNamespaceArray(v []int32) {
+	o.NamespaceArray = &v
+}
+
+// GetNamespaceWrappedArray returns the NamespaceWrappedArray field if non-nil, zero value otherwise.
+func (o *XmlItem) GetNamespaceWrappedArray() []int32 {
+	if o == nil || o.NamespaceWrappedArray == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.NamespaceWrappedArray
+}
+
+// GetNamespaceWrappedArrayOk returns a tuple with the NamespaceWrappedArray field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetNamespaceWrappedArrayOk() ([]int32, bool) {
+	if o == nil || o.NamespaceWrappedArray == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.NamespaceWrappedArray, true
+}
+
+// HasNamespaceWrappedArray returns a boolean if a field has been set.
+func (o *XmlItem) HasNamespaceWrappedArray() bool {
+	if o != nil && o.NamespaceWrappedArray != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetNamespaceWrappedArray gets a reference to the given []int32 and assigns it to the NamespaceWrappedArray field.
+func (o *XmlItem) SetNamespaceWrappedArray(v []int32) {
+	o.NamespaceWrappedArray = &v
+}
+
+// GetPrefixNsString returns the PrefixNsString field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixNsString() string {
+	if o == nil || o.PrefixNsString == nil {
+		var ret string
+		return ret
+	}
+	return *o.PrefixNsString
+}
+
+// GetPrefixNsStringOk returns a tuple with the PrefixNsString field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixNsStringOk() (string, bool) {
+	if o == nil || o.PrefixNsString == nil {
+		var ret string
+		return ret, false
+	}
+	return *o.PrefixNsString, true
+}
+
+// HasPrefixNsString returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixNsString() bool {
+	if o != nil && o.PrefixNsString != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixNsString gets a reference to the given string and assigns it to the PrefixNsString field.
+func (o *XmlItem) SetPrefixNsString(v string) {
+	o.PrefixNsString = &v
+}
+
+// GetPrefixNsNumber returns the PrefixNsNumber field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixNsNumber() float32 {
+	if o == nil || o.PrefixNsNumber == nil {
+		var ret float32
+		return ret
+	}
+	return *o.PrefixNsNumber
+}
+
+// GetPrefixNsNumberOk returns a tuple with the PrefixNsNumber field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixNsNumberOk() (float32, bool) {
+	if o == nil || o.PrefixNsNumber == nil {
+		var ret float32
+		return ret, false
+	}
+	return *o.PrefixNsNumber, true
+}
+
+// HasPrefixNsNumber returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixNsNumber() bool {
+	if o != nil && o.PrefixNsNumber != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixNsNumber gets a reference to the given float32 and assigns it to the PrefixNsNumber field.
+func (o *XmlItem) SetPrefixNsNumber(v float32) {
+	o.PrefixNsNumber = &v
+}
+
+// GetPrefixNsInteger returns the PrefixNsInteger field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixNsInteger() int32 {
+	if o == nil || o.PrefixNsInteger == nil {
+		var ret int32
+		return ret
+	}
+	return *o.PrefixNsInteger
+}
+
+// GetPrefixNsIntegerOk returns a tuple with the PrefixNsInteger field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixNsIntegerOk() (int32, bool) {
+	if o == nil || o.PrefixNsInteger == nil {
+		var ret int32
+		return ret, false
+	}
+	return *o.PrefixNsInteger, true
+}
+
+// HasPrefixNsInteger returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixNsInteger() bool {
+	if o != nil && o.PrefixNsInteger != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixNsInteger gets a reference to the given int32 and assigns it to the PrefixNsInteger field.
+func (o *XmlItem) SetPrefixNsInteger(v int32) {
+	o.PrefixNsInteger = &v
+}
+
+// GetPrefixNsBoolean returns the PrefixNsBoolean field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixNsBoolean() bool {
+	if o == nil || o.PrefixNsBoolean == nil {
+		var ret bool
+		return ret
+	}
+	return *o.PrefixNsBoolean
+}
+
+// GetPrefixNsBooleanOk returns a tuple with the PrefixNsBoolean field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixNsBooleanOk() (bool, bool) {
+	if o == nil || o.PrefixNsBoolean == nil {
+		var ret bool
+		return ret, false
+	}
+	return *o.PrefixNsBoolean, true
+}
+
+// HasPrefixNsBoolean returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixNsBoolean() bool {
+	if o != nil && o.PrefixNsBoolean != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixNsBoolean gets a reference to the given bool and assigns it to the PrefixNsBoolean field.
+func (o *XmlItem) SetPrefixNsBoolean(v bool) {
+	o.PrefixNsBoolean = &v
+}
+
+// GetPrefixNsArray returns the PrefixNsArray field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixNsArray() []int32 {
+	if o == nil || o.PrefixNsArray == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.PrefixNsArray
+}
+
+// GetPrefixNsArrayOk returns a tuple with the PrefixNsArray field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixNsArrayOk() ([]int32, bool) {
+	if o == nil || o.PrefixNsArray == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.PrefixNsArray, true
+}
+
+// HasPrefixNsArray returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixNsArray() bool {
+	if o != nil && o.PrefixNsArray != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixNsArray gets a reference to the given []int32 and assigns it to the PrefixNsArray field.
+func (o *XmlItem) SetPrefixNsArray(v []int32) {
+	o.PrefixNsArray = &v
+}
+
+// GetPrefixNsWrappedArray returns the PrefixNsWrappedArray field if non-nil, zero value otherwise.
+func (o *XmlItem) GetPrefixNsWrappedArray() []int32 {
+	if o == nil || o.PrefixNsWrappedArray == nil {
+		var ret []int32
+		return ret
+	}
+	return *o.PrefixNsWrappedArray
+}
+
+// GetPrefixNsWrappedArrayOk returns a tuple with the PrefixNsWrappedArray field if it's non-nil, zero value otherwise
+// and a boolean to check if the value has been set.
+func (o *XmlItem) GetPrefixNsWrappedArrayOk() ([]int32, bool) {
+	if o == nil || o.PrefixNsWrappedArray == nil {
+		var ret []int32
+		return ret, false
+	}
+	return *o.PrefixNsWrappedArray, true
+}
+
+// HasPrefixNsWrappedArray returns a boolean if a field has been set.
+func (o *XmlItem) HasPrefixNsWrappedArray() bool {
+	if o != nil && o.PrefixNsWrappedArray != nil {
+		return true
+	}
+
+	return false
+}
+
+// SetPrefixNsWrappedArray gets a reference to the given []int32 and assigns it to the PrefixNsWrappedArray field.
+func (o *XmlItem) SetPrefixNsWrappedArray(v []int32) {
+	o.PrefixNsWrappedArray = &v
+}
+
+
+func (o XmlItem) MarshalJSON() ([]byte, error) {
+	toSerialize := map[string]interface{}{}
+	if o.AttributeString != nil {
+		toSerialize["attribute_string"] = o.AttributeString
+	}
+	if o.AttributeNumber != nil {
+		toSerialize["attribute_number"] = o.AttributeNumber
+	}
+	if o.AttributeInteger != nil {
+		toSerialize["attribute_integer"] = o.AttributeInteger
+	}
+	if o.AttributeBoolean != nil {
+		toSerialize["attribute_boolean"] = o.AttributeBoolean
+	}
+	if o.WrappedArray != nil {
+		toSerialize["wrapped_array"] = o.WrappedArray
+	}
+	if o.NameString != nil {
+		toSerialize["name_string"] = o.NameString
+	}
+	if o.NameNumber != nil {
+		toSerialize["name_number"] = o.NameNumber
+	}
+	if o.NameInteger != nil {
+		toSerialize["name_integer"] = o.NameInteger
+	}
+	if o.NameBoolean != nil {
+		toSerialize["name_boolean"] = o.NameBoolean
+	}
+	if o.NameArray != nil {
+		toSerialize["name_array"] = o.NameArray
+	}
+	if o.NameWrappedArray != nil {
+		toSerialize["name_wrapped_array"] = o.NameWrappedArray
+	}
+	if o.PrefixString != nil {
+		toSerialize["prefix_string"] = o.PrefixString
+	}
+	if o.PrefixNumber != nil {
+		toSerialize["prefix_number"] = o.PrefixNumber
+	}
+	if o.PrefixInteger != nil {
+		toSerialize["prefix_integer"] = o.PrefixInteger
+	}
+	if o.PrefixBoolean != nil {
+		toSerialize["prefix_boolean"] = o.PrefixBoolean
+	}
+	if o.PrefixArray != nil {
+		toSerialize["prefix_array"] = o.PrefixArray
+	}
+	if o.PrefixWrappedArray != nil {
+		toSerialize["prefix_wrapped_array"] = o.PrefixWrappedArray
+	}
+	if o.NamespaceString != nil {
+		toSerialize["namespace_string"] = o.NamespaceString
+	}
+	if o.NamespaceNumber != nil {
+		toSerialize["namespace_number"] = o.NamespaceNumber
+	}
+	if o.NamespaceInteger != nil {
+		toSerialize["namespace_integer"] = o.NamespaceInteger
+	}
+	if o.NamespaceBoolean != nil {
+		toSerialize["namespace_boolean"] = o.NamespaceBoolean
+	}
+	if o.NamespaceArray != nil {
+		toSerialize["namespace_array"] = o.NamespaceArray
+	}
+	if o.NamespaceWrappedArray != nil {
+		toSerialize["namespace_wrapped_array"] = o.NamespaceWrappedArray
+	}
+	if o.PrefixNsString != nil {
+		toSerialize["prefix_ns_string"] = o.PrefixNsString
+	}
+	if o.PrefixNsNumber != nil {
+		toSerialize["prefix_ns_number"] = o.PrefixNsNumber
+	}
+	if o.PrefixNsInteger != nil {
+		toSerialize["prefix_ns_integer"] = o.PrefixNsInteger
+	}
+	if o.PrefixNsBoolean != nil {
+		toSerialize["prefix_ns_boolean"] = o.PrefixNsBoolean
+	}
+	if o.PrefixNsArray != nil {
+		toSerialize["prefix_ns_array"] = o.PrefixNsArray
+	}
+	if o.PrefixNsWrappedArray != nil {
+		toSerialize["prefix_ns_wrapped_array"] = o.PrefixNsWrappedArray
+	}
+	return json.Marshal(toSerialize)
+}
+
+
diff --git a/samples/client/petstore/go-experimental/go-petstore/utils.go b/samples/client/petstore/go-experimental/go-petstore/utils.go
new file mode 100644
index 0000000000000000000000000000000000000000..8d2130be3f478213cd31df16ded31e9bcef6f949
--- /dev/null
+++ b/samples/client/petstore/go-experimental/go-petstore/utils.go
@@ -0,0 +1,39 @@
+/*
+ * OpenAPI Petstore
+ *
+ * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+ *
+ * API version: 1.0.0
+ * Generated by: OpenAPI Generator (https://openapi-generator.tech)
+ */
+
+package petstore
+
+import "time"
+
+// PtrBool is a helper routine that returns a pointer to given integer value.
+func PtrBool(v bool) *bool { return &v }
+
+// PtrInt is a helper routine that returns a pointer to given integer value.
+func PtrInt(v int) *int { return &v }
+
+// PtrInt32 is a helper routine that returns a pointer to given integer value.
+func PtrInt32(v int32) *int32 { return &v }
+
+// PtrInt64 is a helper routine that returns a pointer to given integer value.
+func PtrInt64(v int64) *int64 { return &v }
+
+// PtrFloat is a helper routine that returns a pointer to given float value.
+func PtrFloat(v float32) *float32 { return &v }
+
+// PtrFloat32 is a helper routine that returns a pointer to given float value.
+func PtrFloat32(v float32) *float32 { return &v }
+
+// PtrFloat64 is a helper routine that returns a pointer to given float value.
+func PtrFloat64(v float64) *float64 { return &v }
+
+// PtrString is a helper routine that returns a pointer to given string value.
+func PtrString(v string) *string { return &v }
+
+// PtrTime is helper routine that returns a pointer to given Time value.
+func PtrTime(v time.Time) *time.Time { return &v }
\ No newline at end of file
diff --git a/samples/client/petstore/go-experimental/pet_api_test.go b/samples/client/petstore/go-experimental/pet_api_test.go
index 969fab1f667a0c587031d25460ad29192791a916..c1e8006bb0cf5c36e5f1b6bc27284d93c7e1fe16 100644
--- a/samples/client/petstore/go-experimental/pet_api_test.go
+++ b/samples/client/petstore/go-experimental/pet_api_test.go
@@ -28,8 +28,9 @@ func TestMain(m *testing.M) {
 }
 
 func TestAddPet(t *testing.T) {
-	newPet := (sw.Pet{Id: 12830, Name: "gopher",
-		PhotoUrls: []string{"http://1.com", "http://2.com"}, Status: "pending", Tags: []sw.Tag{sw.Tag{Id: 1, Name: "tag2"}}})
+	newPet := (sw.Pet{Id: sw.PtrInt64(12830), Name: sw.PtrString("gopher"),
+		PhotoUrls: &[]string{"http://1.com", "http://2.com"}, Status: sw.PtrString("pending"),
+		Tags: &[]sw.Tag{sw.Tag{Id: sw.PtrInt64(1), Name: sw.PtrString("tag2")}}})
 
 	r, err := client.PetApi.AddPet(context.Background(), newPet)
 
@@ -86,8 +87,8 @@ func TestUpdatePetWithForm(t *testing.T) {
 		t.Log(r)
 	}
 
-    // get the pet with id 12830 from server to verify the update
-    isPetCorrect(t, 12830, "golang", "available")
+	// get the pet with id 12830 from server to verify the update
+	isPetCorrect(t, 12830, "golang", "available")
 }
 
 func TestFindPetsByTag(t *testing.T) {
@@ -103,8 +104,8 @@ func TestFindPetsByTag(t *testing.T) {
 
 			assert := assert.New(t)
 			for i := 0; i < len(resp); i++ {
-				if resp[i].Id == 12830 {
-					assert.Equal(resp[i].Status, "available", "Pet status should be `pending`")
+				if *resp[i].Id == 12830 {
+					assert.Equal(*resp[i].Status, "available", "Pet status should be `pending`")
 					found = true
 				}
 			}
@@ -131,7 +132,7 @@ func TestFindPetsByStatus(t *testing.T) {
 		} else {
 			assert := assert.New(t)
 			for i := 0; i < len(resp); i++ {
-				assert.Equal(resp[i].Status, "available", "Pet status should be `available`")
+				assert.Equal(*resp[i].Status, "available", "Pet status should be `available`")
 			}
 		}
 
@@ -284,9 +285,9 @@ func isPetCorrect(t *testing.T, id int64, name string, status string) {
 	if err != nil {
 		t.Fatalf("Error while getting pet by id: %v", err)
 	} else {
-		assert.Equal(resp.Id, int64(id), "Pet id should be equal")
-		assert.Equal(resp.Name, name, fmt.Sprintf("Pet name should be %s", name))
-		assert.Equal(resp.Status, status, fmt.Sprintf("Pet status should be %s", status))
+		assert.Equal(*resp.Id, int64(id), "Pet id should be equal")
+		assert.Equal(*resp.Name, name, fmt.Sprintf("Pet name should be %s", name))
+		assert.Equal(*resp.Status, status, fmt.Sprintf("Pet status should be %s", status))
 
 		//t.Log(resp)
 	}
@@ -294,4 +295,3 @@ func isPetCorrect(t *testing.T, id int64, name string, status string) {
 		t.Log(r)
 	}
 }
-
diff --git a/samples/client/petstore/go-experimental/store_api_test.go b/samples/client/petstore/go-experimental/store_api_test.go
index 3088adf7b40dc3097ea49d6c9a43f0dd38ffd7ab..81f4fd7e33d95d34919e492ad3759ce3ff3f6b1f 100644
--- a/samples/client/petstore/go-experimental/store_api_test.go
+++ b/samples/client/petstore/go-experimental/store_api_test.go
@@ -11,12 +11,12 @@ import (
 
 func TestPlaceOrder(t *testing.T) {
 	newOrder := sw.Order{
-		Id:       0,
-		PetId:    0,
-		Quantity: 0,
-		ShipDate: time.Now().UTC(),
-		Status:   "placed",
-		Complete: false}
+		Id:       sw.PtrInt64(0),
+		PetId:    sw.PtrInt64(0),
+		Quantity: sw.PtrInt32(0),
+		ShipDate: sw.PtrTime(time.Now().UTC()),
+		Status:   sw.PtrString("placed"),
+		Complete: sw.PtrBool(false)}
 
 	_, r, err := client.StoreApi.PlaceOrder(context.Background(), newOrder)
 
diff --git a/samples/client/petstore/go-experimental/user_api_test.go b/samples/client/petstore/go-experimental/user_api_test.go
index 012c608fab6b3fd5b99fc5557e0542d1b80dfdc2..07b82ebb9757896b53da09923bb87115e3aab8c0 100644
--- a/samples/client/petstore/go-experimental/user_api_test.go
+++ b/samples/client/petstore/go-experimental/user_api_test.go
@@ -11,14 +11,14 @@ import (
 
 func TestCreateUser(t *testing.T) {
 	newUser := sw.User{
-		Id:         1000,
-		FirstName:  "gopher",
-		LastName:   "lang",
-		Username:   "gopher",
-		Password:   "lang",
-		Email:      "lang@test.com",
-		Phone:      "5101112222",
-		UserStatus: 1}
+		Id:         sw.PtrInt64(1000),
+		FirstName:  sw.PtrString("gopher"),
+		LastName:   sw.PtrString("lang"),
+        Username:   sw.PtrString("gopher"),
+		Password:   sw.PtrString("lang"),
+		Email:      sw.PtrString("lang@test.com"),
+		Phone:      sw.PtrString("5101112222"),
+		UserStatus: sw.PtrInt32(1)}
 
 	apiResponse, err := client.UserApi.CreateUser(context.Background(), newUser)
 
@@ -34,24 +34,24 @@ func TestCreateUser(t *testing.T) {
 func TestCreateUsersWithArrayInput(t *testing.T) {
 	newUsers := []sw.User{
 		sw.User{
-			Id:         int64(1001),
-			FirstName:  "gopher1",
-			LastName:   "lang1",
-			Username:   "gopher1",
-			Password:   "lang1",
-			Email:      "lang1@test.com",
-			Phone:      "5101112222",
-			UserStatus: int32(1),
+			Id:         sw.PtrInt64(1001),
+			FirstName:  sw.PtrString("gopher1"),
+			LastName:   sw.PtrString("lang1"),
+			Username:   sw.PtrString("gopher1"),
+			Password:   sw.PtrString("lang1"),
+			Email:      sw.PtrString("lang1@test.com"),
+			Phone:      sw.PtrString("5101112222"),
+			UserStatus: sw.PtrInt32(1),
 		},
 		sw.User{
-			Id:         int64(1002),
-			FirstName:  "gopher2",
-			LastName:   "lang2",
-			Username:   "gopher2",
-			Password:   "lang2",
-			Email:      "lang2@test.com",
-			Phone:      "5101112222",
-			UserStatus: int32(1),
+			Id:         sw.PtrInt64(1002),
+			FirstName:  sw.PtrString("gopher2"),
+			LastName:   sw.PtrString("lang2"),
+			Username:   sw.PtrString("gopher2"),
+			Password:   sw.PtrString("lang2"),
+			Email:      sw.PtrString("lang2@test.com"),
+			Phone:      sw.PtrString("5101112222"),
+			UserStatus: sw.PtrInt32(1),
 		},
 	}
 
@@ -84,9 +84,9 @@ func TestGetUserByName(t *testing.T) {
 	if err != nil {
 		t.Fatalf("Error while getting user by id: %v", err)
 	} else {
-		assert.Equal(resp.Id, int64(1000), "User id should be equal")
-		assert.Equal(resp.Username, "gopher", "User name should be gopher")
-		assert.Equal(resp.LastName, "lang", "Last name should be lang")
+		assert.Equal(*resp.Id, int64(1000), "User id should be equal")
+		assert.Equal(*resp.Username, "gopher", "User name should be gopher")
+		assert.Equal(*resp.LastName, "lang", "Last name should be lang")
 		//t.Log(resp)
 	}
 	if apiResponse.StatusCode != 200 {
@@ -113,14 +113,14 @@ func TestUpdateUser(t *testing.T) {
 	assert := assert.New(t)
 
 	newUser := sw.User{
-		Id:         1000,
-		FirstName:  "gopher20",
-		LastName:   "lang20",
-		Username:   "gopher",
-		Password:   "lang",
-		Email:      "lang@test.com",
-		Phone:      "5101112222",
-		UserStatus: 1}
+		Id:         sw.PtrInt64(1000),
+		FirstName:  sw.PtrString("gopher20"),
+		LastName:   sw.PtrString("lang20"),
+		Username:   sw.PtrString("gopher"),
+		Password:   sw.PtrString("lang"),
+		Email:      sw.PtrString("lang@test.com"),
+		Phone:      sw.PtrString("5101112222"),
+		UserStatus: sw.PtrInt32(1)}
 
 	apiResponse, err := client.UserApi.UpdateUser(context.Background(), "gopher", newUser)
 	if err != nil {
@@ -135,9 +135,9 @@ func TestUpdateUser(t *testing.T) {
 	if err != nil {
 		t.Fatalf("Error while getting user by id: %v", err)
 	} else {
-		assert.Equal(resp.Id, int64(1000), "User id should be equal")
-		assert.Equal(resp.FirstName, "gopher20", "User name should be gopher")
-		assert.Equal(resp.Password, "lang", "User name should be the same")
+		assert.Equal(*resp.Id, int64(1000), "User id should be equal")
+		assert.Equal(*resp.FirstName, "gopher20", "User name should be gopher")
+		assert.Equal(*resp.Password, "lang", "User name should be the same")
 	}
 }
 
diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/ApiClient.java
index f5cc4b49c8fe264600c41769906ad2d2d7db0d72..ec1d9a433cce3893d72c71e6d62bbd4c03579182 100644
--- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/ApiClient.java
@@ -37,26 +37,26 @@ public class ApiClient {
     }
 
     public AnotherFakeApi anotherFake() {
-        return AnotherFakeApi.anotherFake(config.baseReqSpec.get());
+        return AnotherFakeApi.anotherFake(config.reqSpecSupplier);
     }
     public FakeApi fake() {
-        return FakeApi.fake(config.baseReqSpec.get());
+        return FakeApi.fake(config.reqSpecSupplier);
     }
     public FakeClassnameTags123Api fakeClassnameTags123() {
-        return FakeClassnameTags123Api.fakeClassnameTags123(config.baseReqSpec.get());
+        return FakeClassnameTags123Api.fakeClassnameTags123(config.reqSpecSupplier);
     }
     public PetApi pet() {
-        return PetApi.pet(config.baseReqSpec.get());
+        return PetApi.pet(config.reqSpecSupplier);
     }
     public StoreApi store() {
-        return StoreApi.store(config.baseReqSpec.get());
+        return StoreApi.store(config.reqSpecSupplier);
     }
     public UserApi user() {
-        return UserApi.user(config.baseReqSpec.get());
+        return UserApi.user(config.reqSpecSupplier);
     }
 
     public static class Config {
-        private Supplier<RequestSpecBuilder> baseReqSpec = () -> new RequestSpecBuilder()
+        private Supplier<RequestSpecBuilder> reqSpecSupplier = () -> new RequestSpecBuilder()
                 .setBaseUri(BASE_URI)
                 .setConfig(config().objectMapperConfig(objectMapperConfig().defaultObjectMapper(gson())));
 
@@ -66,7 +66,7 @@ public class ApiClient {
          * @return configuration
          */
         public Config reqSpecSupplier(Supplier<RequestSpecBuilder> supplier) {
-            this.baseReqSpec = supplier;
+            this.reqSpecSupplier = supplier;
             return this;
         }
 
diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/AnotherFakeApi.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/AnotherFakeApi.java
index 719824b840148c994466cea2acf88fa58be39efe..13de1523a6ab27ff952a3683f506f7fca5d75a84 100644
--- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/AnotherFakeApi.java
+++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/AnotherFakeApi.java
@@ -39,14 +39,23 @@ import static io.restassured.http.Method.*;
 @Api(value = "AnotherFake")
 public class AnotherFakeApi {
 
-    private RequestSpecBuilder reqSpec;
+    private Supplier<RequestSpecBuilder> reqSpecSupplier;
+    private Consumer<RequestSpecBuilder> reqSpecCustomizer;
 
-    private AnotherFakeApi(RequestSpecBuilder reqSpec) {
-        this.reqSpec = reqSpec;
+    private AnotherFakeApi(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        this.reqSpecSupplier = reqSpecSupplier;
     }
 
-    public static AnotherFakeApi anotherFake(RequestSpecBuilder reqSpec) {
-        return new AnotherFakeApi(reqSpec);
+    public static AnotherFakeApi anotherFake(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        return new AnotherFakeApi(reqSpecSupplier);
+    }
+
+    private RequestSpecBuilder createReqSpec() {
+        RequestSpecBuilder reqSpec = reqSpecSupplier.get();
+        if(reqSpecCustomizer != null) {
+            reqSpecCustomizer.accept(reqSpec);
+        }
+        return reqSpec;
     }
 
 
@@ -57,16 +66,16 @@ public class AnotherFakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "successful operation")  })
     public Call123testSpecialTagsOper call123testSpecialTags() {
-        return new Call123testSpecialTagsOper(reqSpec);
+        return new Call123testSpecialTagsOper(createReqSpec());
     }
 
     /**
-     * Customise request specification
-     * @param consumer consumer
+     * Customize request specification
+     * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
      * @return api
      */
-    public AnotherFakeApi reqSpec(Consumer<RequestSpecBuilder> consumer) {
-        consumer.accept(reqSpec);
+    public AnotherFakeApi reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+        this.reqSpecCustomizer = reqSpecCustomizer;
         return this;
     }
 
@@ -122,22 +131,22 @@ public class AnotherFakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public Call123testSpecialTagsOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public Call123testSpecialTagsOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public Call123testSpecialTagsOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public Call123testSpecialTagsOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/FakeApi.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/FakeApi.java
index c6b7bd7615c713bc84459d4c9a36447371ece3ac..7ba6b4294aeb7ecd6b64f6aea93c4dc4dc46bea9 100644
--- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/FakeApi.java
+++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/FakeApi.java
@@ -47,14 +47,23 @@ import static io.restassured.http.Method.*;
 @Api(value = "Fake")
 public class FakeApi {
 
-    private RequestSpecBuilder reqSpec;
+    private Supplier<RequestSpecBuilder> reqSpecSupplier;
+    private Consumer<RequestSpecBuilder> reqSpecCustomizer;
 
-    private FakeApi(RequestSpecBuilder reqSpec) {
-        this.reqSpec = reqSpec;
+    private FakeApi(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        this.reqSpecSupplier = reqSpecSupplier;
     }
 
-    public static FakeApi fake(RequestSpecBuilder reqSpec) {
-        return new FakeApi(reqSpec);
+    public static FakeApi fake(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        return new FakeApi(reqSpecSupplier);
+    }
+
+    private RequestSpecBuilder createReqSpec() {
+        RequestSpecBuilder reqSpec = reqSpecSupplier.get();
+        if(reqSpecCustomizer != null) {
+            reqSpecCustomizer.accept(reqSpec);
+        }
+        return reqSpec;
     }
 
 
@@ -65,7 +74,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "successful operation")  })
     public CreateXmlItemOper createXmlItem() {
-        return new CreateXmlItemOper(reqSpec);
+        return new CreateXmlItemOper(createReqSpec());
     }
 
     @ApiOperation(value = "",
@@ -75,7 +84,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "Output boolean")  })
     public FakeOuterBooleanSerializeOper fakeOuterBooleanSerialize() {
-        return new FakeOuterBooleanSerializeOper(reqSpec);
+        return new FakeOuterBooleanSerializeOper(createReqSpec());
     }
 
     @ApiOperation(value = "",
@@ -85,7 +94,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "Output composite")  })
     public FakeOuterCompositeSerializeOper fakeOuterCompositeSerialize() {
-        return new FakeOuterCompositeSerializeOper(reqSpec);
+        return new FakeOuterCompositeSerializeOper(createReqSpec());
     }
 
     @ApiOperation(value = "",
@@ -95,7 +104,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "Output number")  })
     public FakeOuterNumberSerializeOper fakeOuterNumberSerialize() {
-        return new FakeOuterNumberSerializeOper(reqSpec);
+        return new FakeOuterNumberSerializeOper(createReqSpec());
     }
 
     @ApiOperation(value = "",
@@ -105,7 +114,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "Output string")  })
     public FakeOuterStringSerializeOper fakeOuterStringSerialize() {
-        return new FakeOuterStringSerializeOper(reqSpec);
+        return new FakeOuterStringSerializeOper(createReqSpec());
     }
 
     @ApiOperation(value = "",
@@ -115,7 +124,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "Success")  })
     public TestBodyWithFileSchemaOper testBodyWithFileSchema() {
-        return new TestBodyWithFileSchemaOper(reqSpec);
+        return new TestBodyWithFileSchemaOper(createReqSpec());
     }
 
     @ApiOperation(value = "",
@@ -125,7 +134,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "Success")  })
     public TestBodyWithQueryParamsOper testBodyWithQueryParams() {
-        return new TestBodyWithQueryParamsOper(reqSpec);
+        return new TestBodyWithQueryParamsOper(createReqSpec());
     }
 
     @ApiOperation(value = "To test \"client\" model",
@@ -135,7 +144,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "successful operation")  })
     public TestClientModelOper testClientModel() {
-        return new TestClientModelOper(reqSpec);
+        return new TestClientModelOper(createReqSpec());
     }
 
     @ApiOperation(value = "Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 ",
@@ -146,7 +155,7 @@ public class FakeApi {
             @ApiResponse(code = 400, message = "Invalid username supplied") ,
             @ApiResponse(code = 404, message = "User not found")  })
     public TestEndpointParametersOper testEndpointParameters() {
-        return new TestEndpointParametersOper(reqSpec);
+        return new TestEndpointParametersOper(createReqSpec());
     }
 
     @ApiOperation(value = "To test enum parameters",
@@ -157,7 +166,7 @@ public class FakeApi {
             @ApiResponse(code = 400, message = "Invalid request") ,
             @ApiResponse(code = 404, message = "Not found")  })
     public TestEnumParametersOper testEnumParameters() {
-        return new TestEnumParametersOper(reqSpec);
+        return new TestEnumParametersOper(createReqSpec());
     }
 
     @ApiOperation(value = "Fake endpoint to test group parameters (optional)",
@@ -167,7 +176,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 400, message = "Someting wrong")  })
     public TestGroupParametersOper testGroupParameters() {
-        return new TestGroupParametersOper(reqSpec);
+        return new TestGroupParametersOper(createReqSpec());
     }
 
     @ApiOperation(value = "test inline additionalProperties",
@@ -177,7 +186,7 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "successful operation")  })
     public TestInlineAdditionalPropertiesOper testInlineAdditionalProperties() {
-        return new TestInlineAdditionalPropertiesOper(reqSpec);
+        return new TestInlineAdditionalPropertiesOper(createReqSpec());
     }
 
     @ApiOperation(value = "test json serialization of form data",
@@ -187,16 +196,16 @@ public class FakeApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "successful operation")  })
     public TestJsonFormDataOper testJsonFormData() {
-        return new TestJsonFormDataOper(reqSpec);
+        return new TestJsonFormDataOper(createReqSpec());
     }
 
     /**
-     * Customise request specification
-     * @param consumer consumer
+     * Customize request specification
+     * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
      * @return api
      */
-    public FakeApi reqSpec(Consumer<RequestSpecBuilder> consumer) {
-        consumer.accept(reqSpec);
+    public FakeApi reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+        this.reqSpecCustomizer = reqSpecCustomizer;
         return this;
     }
 
@@ -241,22 +250,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public CreateXmlItemOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public CreateXmlItemOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public CreateXmlItemOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public CreateXmlItemOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -312,22 +321,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public FakeOuterBooleanSerializeOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public FakeOuterBooleanSerializeOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public FakeOuterBooleanSerializeOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public FakeOuterBooleanSerializeOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -383,22 +392,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public FakeOuterCompositeSerializeOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public FakeOuterCompositeSerializeOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public FakeOuterCompositeSerializeOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public FakeOuterCompositeSerializeOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -454,22 +463,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public FakeOuterNumberSerializeOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public FakeOuterNumberSerializeOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public FakeOuterNumberSerializeOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public FakeOuterNumberSerializeOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -525,22 +534,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public FakeOuterStringSerializeOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public FakeOuterStringSerializeOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public FakeOuterStringSerializeOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public FakeOuterStringSerializeOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -585,22 +594,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public TestBodyWithFileSchemaOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public TestBodyWithFileSchemaOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public TestBodyWithFileSchemaOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public TestBodyWithFileSchemaOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -657,22 +666,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public TestBodyWithQueryParamsOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public TestBodyWithQueryParamsOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public TestBodyWithQueryParamsOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public TestBodyWithQueryParamsOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -728,22 +737,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public TestClientModelOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public TestClientModelOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public TestClientModelOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public TestClientModelOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -946,22 +955,22 @@ public class FakeApi {
          }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public TestEndpointParametersOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public TestEndpointParametersOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public TestEndpointParametersOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public TestEndpointParametersOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -1092,22 +1101,22 @@ public class FakeApi {
          }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public TestEnumParametersOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public TestEnumParametersOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public TestEnumParametersOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public TestEnumParametersOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -1213,22 +1222,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public TestGroupParametersOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public TestGroupParametersOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public TestGroupParametersOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public TestGroupParametersOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -1273,22 +1282,22 @@ public class FakeApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public TestInlineAdditionalPropertiesOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public TestInlineAdditionalPropertiesOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public TestInlineAdditionalPropertiesOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public TestInlineAdditionalPropertiesOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -1347,22 +1356,22 @@ public class FakeApi {
          }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public TestJsonFormDataOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public TestJsonFormDataOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public TestJsonFormDataOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public TestJsonFormDataOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/FakeClassnameTags123Api.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/FakeClassnameTags123Api.java
index 69ae6841c01d3295214b661b28ffdf333986ac49..f7130fef3c24632dd7060bed487129c09f0f0930 100644
--- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/FakeClassnameTags123Api.java
+++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/FakeClassnameTags123Api.java
@@ -39,14 +39,23 @@ import static io.restassured.http.Method.*;
 @Api(value = "FakeClassnameTags123")
 public class FakeClassnameTags123Api {
 
-    private RequestSpecBuilder reqSpec;
+    private Supplier<RequestSpecBuilder> reqSpecSupplier;
+    private Consumer<RequestSpecBuilder> reqSpecCustomizer;
 
-    private FakeClassnameTags123Api(RequestSpecBuilder reqSpec) {
-        this.reqSpec = reqSpec;
+    private FakeClassnameTags123Api(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        this.reqSpecSupplier = reqSpecSupplier;
     }
 
-    public static FakeClassnameTags123Api fakeClassnameTags123(RequestSpecBuilder reqSpec) {
-        return new FakeClassnameTags123Api(reqSpec);
+    public static FakeClassnameTags123Api fakeClassnameTags123(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        return new FakeClassnameTags123Api(reqSpecSupplier);
+    }
+
+    private RequestSpecBuilder createReqSpec() {
+        RequestSpecBuilder reqSpec = reqSpecSupplier.get();
+        if(reqSpecCustomizer != null) {
+            reqSpecCustomizer.accept(reqSpec);
+        }
+        return reqSpec;
     }
 
 
@@ -57,16 +66,16 @@ public class FakeClassnameTags123Api {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "successful operation")  })
     public TestClassnameOper testClassname() {
-        return new TestClassnameOper(reqSpec);
+        return new TestClassnameOper(createReqSpec());
     }
 
     /**
-     * Customise request specification
-     * @param consumer consumer
+     * Customize request specification
+     * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
      * @return api
      */
-    public FakeClassnameTags123Api reqSpec(Consumer<RequestSpecBuilder> consumer) {
-        consumer.accept(reqSpec);
+    public FakeClassnameTags123Api reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+        this.reqSpecCustomizer = reqSpecCustomizer;
         return this;
     }
 
@@ -122,22 +131,22 @@ public class FakeClassnameTags123Api {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public TestClassnameOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public TestClassnameOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public TestClassnameOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public TestClassnameOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/PetApi.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/PetApi.java
index d64370cf3d1bbfda9d4884385b64362f80b575a3..cc8a389d94a18cf9465ad652648ced875845e389 100644
--- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/PetApi.java
+++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/PetApi.java
@@ -41,14 +41,23 @@ import static io.restassured.http.Method.*;
 @Api(value = "Pet")
 public class PetApi {
 
-    private RequestSpecBuilder reqSpec;
+    private Supplier<RequestSpecBuilder> reqSpecSupplier;
+    private Consumer<RequestSpecBuilder> reqSpecCustomizer;
 
-    private PetApi(RequestSpecBuilder reqSpec) {
-        this.reqSpec = reqSpec;
+    private PetApi(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        this.reqSpecSupplier = reqSpecSupplier;
     }
 
-    public static PetApi pet(RequestSpecBuilder reqSpec) {
-        return new PetApi(reqSpec);
+    public static PetApi pet(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        return new PetApi(reqSpecSupplier);
+    }
+
+    private RequestSpecBuilder createReqSpec() {
+        RequestSpecBuilder reqSpec = reqSpecSupplier.get();
+        if(reqSpecCustomizer != null) {
+            reqSpecCustomizer.accept(reqSpec);
+        }
+        return reqSpec;
     }
 
 
@@ -60,7 +69,7 @@ public class PetApi {
             @ApiResponse(code = 200, message = "successful operation") ,
             @ApiResponse(code = 405, message = "Invalid input")  })
     public AddPetOper addPet() {
-        return new AddPetOper(reqSpec);
+        return new AddPetOper(createReqSpec());
     }
 
     @ApiOperation(value = "Deletes a pet",
@@ -71,7 +80,7 @@ public class PetApi {
             @ApiResponse(code = 200, message = "successful operation") ,
             @ApiResponse(code = 400, message = "Invalid pet value")  })
     public DeletePetOper deletePet() {
-        return new DeletePetOper(reqSpec);
+        return new DeletePetOper(createReqSpec());
     }
 
     @ApiOperation(value = "Finds Pets by status",
@@ -82,7 +91,7 @@ public class PetApi {
             @ApiResponse(code = 200, message = "successful operation") ,
             @ApiResponse(code = 400, message = "Invalid status value")  })
     public FindPetsByStatusOper findPetsByStatus() {
-        return new FindPetsByStatusOper(reqSpec);
+        return new FindPetsByStatusOper(createReqSpec());
     }
 
     @ApiOperation(value = "Finds Pets by tags",
@@ -94,7 +103,7 @@ public class PetApi {
             @ApiResponse(code = 400, message = "Invalid tag value")  })
     @Deprecated
     public FindPetsByTagsOper findPetsByTags() {
-        return new FindPetsByTagsOper(reqSpec);
+        return new FindPetsByTagsOper(createReqSpec());
     }
 
     @ApiOperation(value = "Find pet by ID",
@@ -106,7 +115,7 @@ public class PetApi {
             @ApiResponse(code = 400, message = "Invalid ID supplied") ,
             @ApiResponse(code = 404, message = "Pet not found")  })
     public GetPetByIdOper getPetById() {
-        return new GetPetByIdOper(reqSpec);
+        return new GetPetByIdOper(createReqSpec());
     }
 
     @ApiOperation(value = "Update an existing pet",
@@ -119,7 +128,7 @@ public class PetApi {
             @ApiResponse(code = 404, message = "Pet not found") ,
             @ApiResponse(code = 405, message = "Validation exception")  })
     public UpdatePetOper updatePet() {
-        return new UpdatePetOper(reqSpec);
+        return new UpdatePetOper(createReqSpec());
     }
 
     @ApiOperation(value = "Updates a pet in the store with form data",
@@ -129,7 +138,7 @@ public class PetApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 405, message = "Invalid input")  })
     public UpdatePetWithFormOper updatePetWithForm() {
-        return new UpdatePetWithFormOper(reqSpec);
+        return new UpdatePetWithFormOper(createReqSpec());
     }
 
     @ApiOperation(value = "uploads an image",
@@ -139,7 +148,7 @@ public class PetApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "successful operation")  })
     public UploadFileOper uploadFile() {
-        return new UploadFileOper(reqSpec);
+        return new UploadFileOper(createReqSpec());
     }
 
     @ApiOperation(value = "uploads an image (required)",
@@ -149,16 +158,16 @@ public class PetApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "successful operation")  })
     public UploadFileWithRequiredFileOper uploadFileWithRequiredFile() {
-        return new UploadFileWithRequiredFileOper(reqSpec);
+        return new UploadFileWithRequiredFileOper(createReqSpec());
     }
 
     /**
-     * Customise request specification
-     * @param consumer consumer
+     * Customize request specification
+     * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
      * @return api
      */
-    public PetApi reqSpec(Consumer<RequestSpecBuilder> consumer) {
-        consumer.accept(reqSpec);
+    public PetApi reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+        this.reqSpecCustomizer = reqSpecCustomizer;
         return this;
     }
 
@@ -203,22 +212,22 @@ public class PetApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public AddPetOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public AddPetOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public AddPetOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public AddPetOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -276,22 +285,22 @@ public class PetApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public DeletePetOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public DeletePetOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public DeletePetOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public DeletePetOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -348,22 +357,22 @@ public class PetApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public FindPetsByStatusOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public FindPetsByStatusOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public FindPetsByStatusOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public FindPetsByStatusOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -422,22 +431,22 @@ public class PetApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public FindPetsByTagsOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public FindPetsByTagsOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public FindPetsByTagsOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public FindPetsByTagsOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -494,22 +503,22 @@ public class PetApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public GetPetByIdOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public GetPetByIdOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public GetPetByIdOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public GetPetByIdOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -554,22 +563,22 @@ public class PetApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public UpdatePetOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public UpdatePetOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public UpdatePetOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public UpdatePetOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -640,22 +649,22 @@ public class PetApi {
          }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public UpdatePetWithFormOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public UpdatePetWithFormOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public UpdatePetWithFormOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public UpdatePetWithFormOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -737,22 +746,22 @@ public class PetApi {
          }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public UploadFileOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public UploadFileOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public UploadFileOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public UploadFileOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -834,22 +843,22 @@ public class PetApi {
          }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public UploadFileWithRequiredFileOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public UploadFileWithRequiredFileOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public UploadFileWithRequiredFileOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public UploadFileWithRequiredFileOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/StoreApi.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/StoreApi.java
index b1426680b647266c564281b3c645c0c013d9704c..83591c716957d49bced7ea4cc0c1c55db86aa1cd 100644
--- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/StoreApi.java
+++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/StoreApi.java
@@ -39,14 +39,23 @@ import static io.restassured.http.Method.*;
 @Api(value = "Store")
 public class StoreApi {
 
-    private RequestSpecBuilder reqSpec;
+    private Supplier<RequestSpecBuilder> reqSpecSupplier;
+    private Consumer<RequestSpecBuilder> reqSpecCustomizer;
 
-    private StoreApi(RequestSpecBuilder reqSpec) {
-        this.reqSpec = reqSpec;
+    private StoreApi(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        this.reqSpecSupplier = reqSpecSupplier;
     }
 
-    public static StoreApi store(RequestSpecBuilder reqSpec) {
-        return new StoreApi(reqSpec);
+    public static StoreApi store(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        return new StoreApi(reqSpecSupplier);
+    }
+
+    private RequestSpecBuilder createReqSpec() {
+        RequestSpecBuilder reqSpec = reqSpecSupplier.get();
+        if(reqSpecCustomizer != null) {
+            reqSpecCustomizer.accept(reqSpec);
+        }
+        return reqSpec;
     }
 
 
@@ -58,7 +67,7 @@ public class StoreApi {
             @ApiResponse(code = 400, message = "Invalid ID supplied") ,
             @ApiResponse(code = 404, message = "Order not found")  })
     public DeleteOrderOper deleteOrder() {
-        return new DeleteOrderOper(reqSpec);
+        return new DeleteOrderOper(createReqSpec());
     }
 
     @ApiOperation(value = "Returns pet inventories by status",
@@ -68,7 +77,7 @@ public class StoreApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 200, message = "successful operation")  })
     public GetInventoryOper getInventory() {
-        return new GetInventoryOper(reqSpec);
+        return new GetInventoryOper(createReqSpec());
     }
 
     @ApiOperation(value = "Find purchase order by ID",
@@ -80,7 +89,7 @@ public class StoreApi {
             @ApiResponse(code = 400, message = "Invalid ID supplied") ,
             @ApiResponse(code = 404, message = "Order not found")  })
     public GetOrderByIdOper getOrderById() {
-        return new GetOrderByIdOper(reqSpec);
+        return new GetOrderByIdOper(createReqSpec());
     }
 
     @ApiOperation(value = "Place an order for a pet",
@@ -91,16 +100,16 @@ public class StoreApi {
             @ApiResponse(code = 200, message = "successful operation") ,
             @ApiResponse(code = 400, message = "Invalid Order")  })
     public PlaceOrderOper placeOrder() {
-        return new PlaceOrderOper(reqSpec);
+        return new PlaceOrderOper(createReqSpec());
     }
 
     /**
-     * Customise request specification
-     * @param consumer consumer
+     * Customize request specification
+     * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
      * @return api
      */
-    public StoreApi reqSpec(Consumer<RequestSpecBuilder> consumer) {
-        consumer.accept(reqSpec);
+    public StoreApi reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+        this.reqSpecCustomizer = reqSpecCustomizer;
         return this;
     }
 
@@ -146,22 +155,22 @@ public class StoreApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public DeleteOrderOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public DeleteOrderOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public DeleteOrderOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public DeleteOrderOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -206,22 +215,22 @@ public class StoreApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public GetInventoryOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public GetInventoryOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public GetInventoryOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public GetInventoryOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -278,22 +287,22 @@ public class StoreApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public GetOrderByIdOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public GetOrderByIdOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public GetOrderByIdOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public GetOrderByIdOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -349,22 +358,22 @@ public class StoreApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public PlaceOrderOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public PlaceOrderOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public PlaceOrderOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public PlaceOrderOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/UserApi.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/UserApi.java
index e132c70e18755e31968e328a30a6f553a3e4735a..3ab3025c92babff7c50dd5a4576925dd84f86dcf 100644
--- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/UserApi.java
+++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/api/UserApi.java
@@ -39,14 +39,23 @@ import static io.restassured.http.Method.*;
 @Api(value = "User")
 public class UserApi {
 
-    private RequestSpecBuilder reqSpec;
+    private Supplier<RequestSpecBuilder> reqSpecSupplier;
+    private Consumer<RequestSpecBuilder> reqSpecCustomizer;
 
-    private UserApi(RequestSpecBuilder reqSpec) {
-        this.reqSpec = reqSpec;
+    private UserApi(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        this.reqSpecSupplier = reqSpecSupplier;
     }
 
-    public static UserApi user(RequestSpecBuilder reqSpec) {
-        return new UserApi(reqSpec);
+    public static UserApi user(Supplier<RequestSpecBuilder> reqSpecSupplier) {
+        return new UserApi(reqSpecSupplier);
+    }
+
+    private RequestSpecBuilder createReqSpec() {
+        RequestSpecBuilder reqSpec = reqSpecSupplier.get();
+        if(reqSpecCustomizer != null) {
+            reqSpecCustomizer.accept(reqSpec);
+        }
+        return reqSpec;
     }
 
 
@@ -57,7 +66,7 @@ public class UserApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 0, message = "successful operation")  })
     public CreateUserOper createUser() {
-        return new CreateUserOper(reqSpec);
+        return new CreateUserOper(createReqSpec());
     }
 
     @ApiOperation(value = "Creates list of users with given input array",
@@ -67,7 +76,7 @@ public class UserApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 0, message = "successful operation")  })
     public CreateUsersWithArrayInputOper createUsersWithArrayInput() {
-        return new CreateUsersWithArrayInputOper(reqSpec);
+        return new CreateUsersWithArrayInputOper(createReqSpec());
     }
 
     @ApiOperation(value = "Creates list of users with given input array",
@@ -77,7 +86,7 @@ public class UserApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 0, message = "successful operation")  })
     public CreateUsersWithListInputOper createUsersWithListInput() {
-        return new CreateUsersWithListInputOper(reqSpec);
+        return new CreateUsersWithListInputOper(createReqSpec());
     }
 
     @ApiOperation(value = "Delete user",
@@ -88,7 +97,7 @@ public class UserApi {
             @ApiResponse(code = 400, message = "Invalid username supplied") ,
             @ApiResponse(code = 404, message = "User not found")  })
     public DeleteUserOper deleteUser() {
-        return new DeleteUserOper(reqSpec);
+        return new DeleteUserOper(createReqSpec());
     }
 
     @ApiOperation(value = "Get user by user name",
@@ -100,7 +109,7 @@ public class UserApi {
             @ApiResponse(code = 400, message = "Invalid username supplied") ,
             @ApiResponse(code = 404, message = "User not found")  })
     public GetUserByNameOper getUserByName() {
-        return new GetUserByNameOper(reqSpec);
+        return new GetUserByNameOper(createReqSpec());
     }
 
     @ApiOperation(value = "Logs user into the system",
@@ -111,7 +120,7 @@ public class UserApi {
             @ApiResponse(code = 200, message = "successful operation") ,
             @ApiResponse(code = 400, message = "Invalid username/password supplied")  })
     public LoginUserOper loginUser() {
-        return new LoginUserOper(reqSpec);
+        return new LoginUserOper(createReqSpec());
     }
 
     @ApiOperation(value = "Logs out current logged in user session",
@@ -121,7 +130,7 @@ public class UserApi {
     @ApiResponses(value = { 
             @ApiResponse(code = 0, message = "successful operation")  })
     public LogoutUserOper logoutUser() {
-        return new LogoutUserOper(reqSpec);
+        return new LogoutUserOper(createReqSpec());
     }
 
     @ApiOperation(value = "Updated user",
@@ -132,16 +141,16 @@ public class UserApi {
             @ApiResponse(code = 400, message = "Invalid user supplied") ,
             @ApiResponse(code = 404, message = "User not found")  })
     public UpdateUserOper updateUser() {
-        return new UpdateUserOper(reqSpec);
+        return new UpdateUserOper(createReqSpec());
     }
 
     /**
-     * Customise request specification
-     * @param consumer consumer
+     * Customize request specification
+     * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
      * @return api
      */
-    public UserApi reqSpec(Consumer<RequestSpecBuilder> consumer) {
-        consumer.accept(reqSpec);
+    public UserApi reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+        this.reqSpecCustomizer = reqSpecCustomizer;
         return this;
     }
 
@@ -186,22 +195,22 @@ public class UserApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public CreateUserOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public CreateUserOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public CreateUserOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public CreateUserOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -246,22 +255,22 @@ public class UserApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public CreateUsersWithArrayInputOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public CreateUsersWithArrayInputOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public CreateUsersWithArrayInputOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public CreateUsersWithArrayInputOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -306,22 +315,22 @@ public class UserApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public CreateUsersWithListInputOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public CreateUsersWithListInputOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public CreateUsersWithListInputOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public CreateUsersWithListInputOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -367,22 +376,22 @@ public class UserApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public DeleteUserOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public DeleteUserOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public DeleteUserOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public DeleteUserOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -439,22 +448,22 @@ public class UserApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public GetUserByNameOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public GetUserByNameOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public GetUserByNameOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public GetUserByNameOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -523,22 +532,22 @@ public class UserApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public LoginUserOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public LoginUserOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public LoginUserOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public LoginUserOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -572,22 +581,22 @@ public class UserApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public LogoutUserOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public LogoutUserOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public LogoutUserOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public LogoutUserOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
@@ -644,22 +653,22 @@ public class UserApi {
         }
 
         /**
-         * Customise request specification
-         * @param consumer consumer
+         * Customize request specification
+         * @param reqSpecCustomizer consumer to modify the RequestSpecBuilder
          * @return operation
          */
-        public UpdateUserOper reqSpec(Consumer<RequestSpecBuilder> consumer) {
-            consumer.accept(reqSpec);
+        public UpdateUserOper reqSpec(Consumer<RequestSpecBuilder> reqSpecCustomizer) {
+            reqSpecCustomizer.accept(reqSpec);
             return this;
         }
 
         /**
-         * Customise response specification
-         * @param consumer consumer
+         * Customize response specification
+         * @param respSpecCustomizer consumer to modify the ResponseSpecBuilder
          * @return operation
          */
-        public UpdateUserOper respSpec(Consumer<ResponseSpecBuilder> consumer) {
-            consumer.accept(respSpec);
+        public UpdateUserOper respSpec(Consumer<ResponseSpecBuilder> respSpecCustomizer) {
+            respSpecCustomizer.accept(respSpec);
             return this;
         }
     }
diff --git a/samples/client/petstore/rust-reqwest/.openapi-generator/VERSION b/samples/client/petstore/rust-reqwest/.openapi-generator/VERSION
index d96260ba335daf9acb062ef08962bda16f3a5a8c..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/rust-reqwest/.openapi-generator/VERSION
+++ b/samples/client/petstore/rust-reqwest/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.2-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/rust-reqwest/docs/Pet.md b/samples/client/petstore/rust-reqwest/docs/Pet.md
index 53a462e68b9132bb9d7a80788ee77b18bc88b9e1..2c8ea36dd913a44f65a51586d752cad2ff66b0f6 100644
--- a/samples/client/petstore/rust-reqwest/docs/Pet.md
+++ b/samples/client/petstore/rust-reqwest/docs/Pet.md
@@ -5,10 +5,10 @@
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
 **id** | **i64** |  | [optional] 
-**category** | [***::models::Category**](Category.md) |  | [optional] 
+**category** | [***crate::models::Category**](Category.md) |  | [optional] 
 **name** | **String** |  | 
 **photo_urls** | **Vec<String>** |  | 
-**tags** | [**Vec<::models::Tag>**](Tag.md) |  | [optional] 
+**tags** | [**Vec<crate::models::Tag>**](Tag.md) |  | [optional] 
 **status** | **String** | pet status in the store | [optional] 
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
diff --git a/samples/client/petstore/rust-reqwest/docs/PetApi.md b/samples/client/petstore/rust-reqwest/docs/PetApi.md
index a74635038e7dd9f3a4cec624aef3b63fec671b6a..336116bee51ac8176796820475e419fdee436d33 100644
--- a/samples/client/petstore/rust-reqwest/docs/PetApi.md
+++ b/samples/client/petstore/rust-reqwest/docs/PetApi.md
@@ -85,7 +85,7 @@ Name | Type | Description  | Notes
 
 ## find_pets_by_status
 
-> Vec<::models::Pet> find_pets_by_status(ctx, status)
+> Vec<crate::models::Pet> find_pets_by_status(ctx, status)
 Finds Pets by status
 
 Multiple status values can be provided with comma separated strings
@@ -100,7 +100,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**Vec<::models::Pet>**](Pet.md)
+[**Vec<crate::models::Pet>**](Pet.md)
 
 ### Authorization
 
@@ -116,7 +116,7 @@ Name | Type | Description  | Notes
 
 ## find_pets_by_tags
 
-> Vec<::models::Pet> find_pets_by_tags(ctx, tags)
+> Vec<crate::models::Pet> find_pets_by_tags(ctx, tags)
 Finds Pets by tags
 
 Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
@@ -131,7 +131,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**Vec<::models::Pet>**](Pet.md)
+[**Vec<crate::models::Pet>**](Pet.md)
 
 ### Authorization
 
@@ -147,7 +147,7 @@ Name | Type | Description  | Notes
 
 ## get_pet_by_id
 
-> ::models::Pet get_pet_by_id(ctx, pet_id)
+> crate::models::Pet get_pet_by_id(ctx, pet_id)
 Find pet by ID
 
 Returns a single pet
@@ -162,7 +162,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::Pet**](Pet.md)
+[**crate::models::Pet**](Pet.md)
 
 ### Authorization
 
@@ -247,7 +247,7 @@ Name | Type | Description  | Notes
 
 ## upload_file
 
-> ::models::ApiResponse upload_file(ctx, pet_id, optional)
+> crate::models::ApiResponse upload_file(ctx, pet_id, optional)
 uploads an image
 
 ### Required Parameters
@@ -271,7 +271,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::ApiResponse**](ApiResponse.md)
+[**crate::models::ApiResponse**](ApiResponse.md)
 
 ### Authorization
 
diff --git a/samples/client/petstore/rust-reqwest/docs/StoreApi.md b/samples/client/petstore/rust-reqwest/docs/StoreApi.md
index e57378b9f84e33aa8b94b9fd75fccd6f1e4f3649..28ae8c60af6c697021583058e82d8eec64d60017 100644
--- a/samples/client/petstore/rust-reqwest/docs/StoreApi.md
+++ b/samples/client/petstore/rust-reqwest/docs/StoreApi.md
@@ -70,7 +70,7 @@ This endpoint does not need any parameter.
 
 ## get_order_by_id
 
-> ::models::Order get_order_by_id(order_id)
+> crate::models::Order get_order_by_id(order_id)
 Find purchase order by ID
 
 For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
@@ -84,7 +84,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::Order**](Order.md)
+[**crate::models::Order**](Order.md)
 
 ### Authorization
 
@@ -100,7 +100,7 @@ No authorization required
 
 ## place_order
 
-> ::models::Order place_order(body)
+> crate::models::Order place_order(body)
 Place an order for a pet
 
 ### Required Parameters
@@ -112,7 +112,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::Order**](Order.md)
+[**crate::models::Order**](Order.md)
 
 ### Authorization
 
diff --git a/samples/client/petstore/rust-reqwest/docs/UserApi.md b/samples/client/petstore/rust-reqwest/docs/UserApi.md
index d469a52df88505d9b2d130f845d7a093fb64cdcb..ce5490e8062f90f8eb38b331bd8907c6be01d36d 100644
--- a/samples/client/petstore/rust-reqwest/docs/UserApi.md
+++ b/samples/client/petstore/rust-reqwest/docs/UserApi.md
@@ -55,7 +55,7 @@ Creates list of users with given input array
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
-  **body** | [**Vec<::models::User>**](User.md)| List of user object | 
+  **body** | [**Vec<crate::models::User>**](User.md)| List of user object | 
 
 ### Return type
 
@@ -83,7 +83,7 @@ Creates list of users with given input array
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
-  **body** | [**Vec<::models::User>**](User.md)| List of user object | 
+  **body** | [**Vec<crate::models::User>**](User.md)| List of user object | 
 
 ### Return type
 
@@ -133,7 +133,7 @@ No authorization required
 
 ## get_user_by_name
 
-> ::models::User get_user_by_name(username)
+> crate::models::User get_user_by_name(username)
 Get user by user name
 
 ### Required Parameters
@@ -145,7 +145,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::User**](User.md)
+[**crate::models::User**](User.md)
 
 ### Authorization
 
diff --git a/samples/client/petstore/rust-reqwest/src/apis/client.rs b/samples/client/petstore/rust-reqwest/src/apis/client.rs
index ea6b0eb635b420afe68f744c390375772298069b..14088cbe309d05a5f12b9aba0f6f77e8d8c29c2d 100644
--- a/samples/client/petstore/rust-reqwest/src/apis/client.rs
+++ b/samples/client/petstore/rust-reqwest/src/apis/client.rs
@@ -4,9 +4,9 @@ use super::configuration::Configuration;
 
 pub struct APIClient {
     configuration: Rc<Configuration>,
-    pet_api: Box<::apis::PetApi>,
-    store_api: Box<::apis::StoreApi>,
-    user_api: Box<::apis::UserApi>,
+    pet_api: Box<crate::apis::PetApi>,
+    store_api: Box<crate::apis::StoreApi>,
+    user_api: Box<crate::apis::UserApi>,
 }
 
 impl APIClient {
@@ -15,21 +15,21 @@ impl APIClient {
 
         APIClient {
             configuration: rc.clone(),
-            pet_api: Box::new(::apis::PetApiClient::new(rc.clone())),
-            store_api: Box::new(::apis::StoreApiClient::new(rc.clone())),
-            user_api: Box::new(::apis::UserApiClient::new(rc.clone())),
+            pet_api: Box::new(crate::apis::PetApiClient::new(rc.clone())),
+            store_api: Box::new(crate::apis::StoreApiClient::new(rc.clone())),
+            user_api: Box::new(crate::apis::UserApiClient::new(rc.clone())),
         }
     }
 
-    pub fn pet_api(&self) -> &::apis::PetApi{
+    pub fn pet_api(&self) -> &crate::apis::PetApi{
         self.pet_api.as_ref()
     }
 
-    pub fn store_api(&self) -> &::apis::StoreApi{
+    pub fn store_api(&self) -> &crate::apis::StoreApi{
         self.store_api.as_ref()
     }
 
-    pub fn user_api(&self) -> &::apis::UserApi{
+    pub fn user_api(&self) -> &crate::apis::UserApi{
         self.user_api.as_ref()
     }
 
diff --git a/samples/client/petstore/rust-reqwest/src/apis/pet_api.rs b/samples/client/petstore/rust-reqwest/src/apis/pet_api.rs
index 53d2b82ea7283adccb7ae4ad6fbf4adb81df2238..264fc30e6852095553cb5a7f692514ba5193cb1a 100644
--- a/samples/client/petstore/rust-reqwest/src/apis/pet_api.rs
+++ b/samples/client/petstore/rust-reqwest/src/apis/pet_api.rs
@@ -28,18 +28,18 @@ impl PetApiClient {
 }
 
 pub trait PetApi {
-    fn add_pet(&self, body: ::models::Pet) -> Result<(), Error>;
+    fn add_pet(&self, body: crate::models::Pet) -> Result<(), Error>;
     fn delete_pet(&self, pet_id: i64, api_key: &str) -> Result<(), Error>;
-    fn find_pets_by_status(&self, status: Vec<String>) -> Result<Vec<::models::Pet>, Error>;
-    fn find_pets_by_tags(&self, tags: Vec<String>) -> Result<Vec<::models::Pet>, Error>;
-    fn get_pet_by_id(&self, pet_id: i64) -> Result<::models::Pet, Error>;
-    fn update_pet(&self, body: ::models::Pet) -> Result<(), Error>;
+    fn find_pets_by_status(&self, status: Vec<String>) -> Result<Vec<crate::models::Pet>, Error>;
+    fn find_pets_by_tags(&self, tags: Vec<String>) -> Result<Vec<crate::models::Pet>, Error>;
+    fn get_pet_by_id(&self, pet_id: i64) -> Result<crate::models::Pet, Error>;
+    fn update_pet(&self, body: crate::models::Pet) -> Result<(), Error>;
     fn update_pet_with_form(&self, pet_id: i64, name: &str, status: &str) -> Result<(), Error>;
-    fn upload_file(&self, pet_id: i64, additional_metadata: &str, file: std::path::PathBuf) -> Result<::models::ApiResponse, Error>;
+    fn upload_file(&self, pet_id: i64, additional_metadata: &str, file: std::path::PathBuf) -> Result<crate::models::ApiResponse, Error>;
 }
 
 impl PetApi for PetApiClient {
-    fn add_pet(&self, body: ::models::Pet) -> Result<(), Error> {
+    fn add_pet(&self, body: crate::models::Pet) -> Result<(), Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -83,7 +83,7 @@ impl PetApi for PetApiClient {
         Ok(())
     }
 
-    fn find_pets_by_status(&self, status: Vec<String>) -> Result<Vec<::models::Pet>, Error> {
+    fn find_pets_by_status(&self, status: Vec<String>) -> Result<Vec<crate::models::Pet>, Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -104,7 +104,7 @@ impl PetApi for PetApiClient {
         Ok(client.execute(req)?.error_for_status()?.json()?)
     }
 
-    fn find_pets_by_tags(&self, tags: Vec<String>) -> Result<Vec<::models::Pet>, Error> {
+    fn find_pets_by_tags(&self, tags: Vec<String>) -> Result<Vec<crate::models::Pet>, Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -125,7 +125,7 @@ impl PetApi for PetApiClient {
         Ok(client.execute(req)?.error_for_status()?.json()?)
     }
 
-    fn get_pet_by_id(&self, pet_id: i64) -> Result<::models::Pet, Error> {
+    fn get_pet_by_id(&self, pet_id: i64) -> Result<crate::models::Pet, Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -150,7 +150,7 @@ impl PetApi for PetApiClient {
         Ok(client.execute(req)?.error_for_status()?.json()?)
     }
 
-    fn update_pet(&self, body: ::models::Pet) -> Result<(), Error> {
+    fn update_pet(&self, body: crate::models::Pet) -> Result<(), Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -197,7 +197,7 @@ impl PetApi for PetApiClient {
         Ok(())
     }
 
-    fn upload_file(&self, pet_id: i64, additional_metadata: &str, file: std::path::PathBuf) -> Result<::models::ApiResponse, Error> {
+    fn upload_file(&self, pet_id: i64, additional_metadata: &str, file: std::path::PathBuf) -> Result<crate::models::ApiResponse, Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
diff --git a/samples/client/petstore/rust-reqwest/src/apis/store_api.rs b/samples/client/petstore/rust-reqwest/src/apis/store_api.rs
index d9d60f099607dd58c014ac5e629a42213b755c41..dac744b3b217fdb4838e1aca8936b81bf55c308d 100644
--- a/samples/client/petstore/rust-reqwest/src/apis/store_api.rs
+++ b/samples/client/petstore/rust-reqwest/src/apis/store_api.rs
@@ -30,8 +30,8 @@ impl StoreApiClient {
 pub trait StoreApi {
     fn delete_order(&self, order_id: &str) -> Result<(), Error>;
     fn get_inventory(&self, ) -> Result<::std::collections::HashMap<String, i32>, Error>;
-    fn get_order_by_id(&self, order_id: i64) -> Result<::models::Order, Error>;
-    fn place_order(&self, body: ::models::Order) -> Result<::models::Order, Error>;
+    fn get_order_by_id(&self, order_id: i64) -> Result<crate::models::Order, Error>;
+    fn place_order(&self, body: crate::models::Order) -> Result<crate::models::Order, Error>;
 }
 
 impl StoreApi for StoreApiClient {
@@ -78,7 +78,7 @@ impl StoreApi for StoreApiClient {
         Ok(client.execute(req)?.error_for_status()?.json()?)
     }
 
-    fn get_order_by_id(&self, order_id: i64) -> Result<::models::Order, Error> {
+    fn get_order_by_id(&self, order_id: i64) -> Result<crate::models::Order, Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -95,7 +95,7 @@ impl StoreApi for StoreApiClient {
         Ok(client.execute(req)?.error_for_status()?.json()?)
     }
 
-    fn place_order(&self, body: ::models::Order) -> Result<::models::Order, Error> {
+    fn place_order(&self, body: crate::models::Order) -> Result<crate::models::Order, Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
diff --git a/samples/client/petstore/rust-reqwest/src/apis/user_api.rs b/samples/client/petstore/rust-reqwest/src/apis/user_api.rs
index 68d4c9f12660406725f8602115ffabbbae695c68..e2321b3daa41c60c786212ef728168c1171718ab 100644
--- a/samples/client/petstore/rust-reqwest/src/apis/user_api.rs
+++ b/samples/client/petstore/rust-reqwest/src/apis/user_api.rs
@@ -28,18 +28,18 @@ impl UserApiClient {
 }
 
 pub trait UserApi {
-    fn create_user(&self, body: ::models::User) -> Result<(), Error>;
-    fn create_users_with_array_input(&self, body: Vec<::models::User>) -> Result<(), Error>;
-    fn create_users_with_list_input(&self, body: Vec<::models::User>) -> Result<(), Error>;
+    fn create_user(&self, body: crate::models::User) -> Result<(), Error>;
+    fn create_users_with_array_input(&self, body: Vec<crate::models::User>) -> Result<(), Error>;
+    fn create_users_with_list_input(&self, body: Vec<crate::models::User>) -> Result<(), Error>;
     fn delete_user(&self, username: &str) -> Result<(), Error>;
-    fn get_user_by_name(&self, username: &str) -> Result<::models::User, Error>;
+    fn get_user_by_name(&self, username: &str) -> Result<crate::models::User, Error>;
     fn login_user(&self, username: &str, password: &str) -> Result<String, Error>;
     fn logout_user(&self, ) -> Result<(), Error>;
-    fn update_user(&self, username: &str, body: ::models::User) -> Result<(), Error>;
+    fn update_user(&self, username: &str, body: crate::models::User) -> Result<(), Error>;
 }
 
 impl UserApi for UserApiClient {
-    fn create_user(&self, body: ::models::User) -> Result<(), Error> {
+    fn create_user(&self, body: crate::models::User) -> Result<(), Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -58,7 +58,7 @@ impl UserApi for UserApiClient {
         Ok(())
     }
 
-    fn create_users_with_array_input(&self, body: Vec<::models::User>) -> Result<(), Error> {
+    fn create_users_with_array_input(&self, body: Vec<crate::models::User>) -> Result<(), Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -77,7 +77,7 @@ impl UserApi for UserApiClient {
         Ok(())
     }
 
-    fn create_users_with_list_input(&self, body: Vec<::models::User>) -> Result<(), Error> {
+    fn create_users_with_list_input(&self, body: Vec<crate::models::User>) -> Result<(), Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -114,7 +114,7 @@ impl UserApi for UserApiClient {
         Ok(())
     }
 
-    fn get_user_by_name(&self, username: &str) -> Result<::models::User, Error> {
+    fn get_user_by_name(&self, username: &str) -> Result<crate::models::User, Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
@@ -168,7 +168,7 @@ impl UserApi for UserApiClient {
         Ok(())
     }
 
-    fn update_user(&self, username: &str, body: ::models::User) -> Result<(), Error> {
+    fn update_user(&self, username: &str, body: crate::models::User) -> Result<(), Error> {
         let configuration: &configuration::Configuration = self.configuration.borrow();
         let client = &configuration.client;
 
diff --git a/samples/client/petstore/rust-reqwest/src/models/api_response.rs b/samples/client/petstore/rust-reqwest/src/models/api_response.rs
index 7884fba590ea7d47a79aeb311385869e7daf78b2..814483602dd38443e192587db11a0de36eabc365 100644
--- a/samples/client/petstore/rust-reqwest/src/models/api_response.rs
+++ b/samples/client/petstore/rust-reqwest/src/models/api_response.rs
@@ -10,9 +10,6 @@
 
 /// ApiResponse : Describes the result of uploading an image resource
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct ApiResponse {
diff --git a/samples/client/petstore/rust-reqwest/src/models/category.rs b/samples/client/petstore/rust-reqwest/src/models/category.rs
index 804f9f4c70777b6c1b278c65da7338ea5287cce0..8cb5797ee1cd280185657713bda2f318309209bb 100644
--- a/samples/client/petstore/rust-reqwest/src/models/category.rs
+++ b/samples/client/petstore/rust-reqwest/src/models/category.rs
@@ -10,9 +10,6 @@
 
 /// Category : A category for a pet
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct Category {
diff --git a/samples/client/petstore/rust-reqwest/src/models/order.rs b/samples/client/petstore/rust-reqwest/src/models/order.rs
index 118dc3107671df792d559b999f1341b96dbf978d..24ad342497af137e55c86e62eec7cd522f1b1231 100644
--- a/samples/client/petstore/rust-reqwest/src/models/order.rs
+++ b/samples/client/petstore/rust-reqwest/src/models/order.rs
@@ -10,9 +10,6 @@
 
 /// Order : An order for a pets from the pet store
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct Order {
diff --git a/samples/client/petstore/rust-reqwest/src/models/pet.rs b/samples/client/petstore/rust-reqwest/src/models/pet.rs
index 64dae06e4540da8a850bbdb64dfa42439cea36c5..e3c61239cdcec34a6609de5bc321d721a6d33542 100644
--- a/samples/client/petstore/rust-reqwest/src/models/pet.rs
+++ b/samples/client/petstore/rust-reqwest/src/models/pet.rs
@@ -10,22 +10,19 @@
 
 /// Pet : A pet for sale in the pet store
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct Pet {
     #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
     pub id: Option<i64>,
     #[serde(rename = "category", skip_serializing_if = "Option::is_none")]
-    pub category: Option<::models::Category>,
+    pub category: Option<crate::models::Category>,
     #[serde(rename = "name")]
     pub name: String,
     #[serde(rename = "photoUrls")]
     pub photo_urls: Vec<String>,
     #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
-    pub tags: Option<Vec<::models::Tag>>,
+    pub tags: Option<Vec<crate::models::Tag>>,
     /// pet status in the store
     #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
     pub status: Option<String>,
diff --git a/samples/client/petstore/rust-reqwest/src/models/tag.rs b/samples/client/petstore/rust-reqwest/src/models/tag.rs
index 503fb7f61bd7972d863e9f36b837ad35fc98ad91..c7cbdf2cc05a614246ce0c613a3b6c71e2b15632 100644
--- a/samples/client/petstore/rust-reqwest/src/models/tag.rs
+++ b/samples/client/petstore/rust-reqwest/src/models/tag.rs
@@ -10,9 +10,6 @@
 
 /// Tag : A tag for a pet
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct Tag {
diff --git a/samples/client/petstore/rust-reqwest/src/models/user.rs b/samples/client/petstore/rust-reqwest/src/models/user.rs
index 6bfa6e2167ad904035b605745327ce554c032f86..e54ed70130645c87b4f9496867cbd0a7e10b3df1 100644
--- a/samples/client/petstore/rust-reqwest/src/models/user.rs
+++ b/samples/client/petstore/rust-reqwest/src/models/user.rs
@@ -10,9 +10,6 @@
 
 /// User : A User who is purchasing from the pet store
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct User {
diff --git a/samples/client/petstore/rust/.openapi-generator/VERSION b/samples/client/petstore/rust/.openapi-generator/VERSION
index d96260ba335daf9acb062ef08962bda16f3a5a8c..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/rust/.openapi-generator/VERSION
+++ b/samples/client/petstore/rust/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.2-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/rust/docs/Pet.md b/samples/client/petstore/rust/docs/Pet.md
index 53a462e68b9132bb9d7a80788ee77b18bc88b9e1..2c8ea36dd913a44f65a51586d752cad2ff66b0f6 100644
--- a/samples/client/petstore/rust/docs/Pet.md
+++ b/samples/client/petstore/rust/docs/Pet.md
@@ -5,10 +5,10 @@
 Name | Type | Description | Notes
 ------------ | ------------- | ------------- | -------------
 **id** | **i64** |  | [optional] 
-**category** | [***::models::Category**](Category.md) |  | [optional] 
+**category** | [***crate::models::Category**](Category.md) |  | [optional] 
 **name** | **String** |  | 
 **photo_urls** | **Vec<String>** |  | 
-**tags** | [**Vec<::models::Tag>**](Tag.md) |  | [optional] 
+**tags** | [**Vec<crate::models::Tag>**](Tag.md) |  | [optional] 
 **status** | **String** | pet status in the store | [optional] 
 
 [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
diff --git a/samples/client/petstore/rust/docs/PetApi.md b/samples/client/petstore/rust/docs/PetApi.md
index e690c80518576069825bf37598b086b6ef12403f..4d5e4c7839b46e3b69790cd4a7e256ecf9a55260 100644
--- a/samples/client/petstore/rust/docs/PetApi.md
+++ b/samples/client/petstore/rust/docs/PetApi.md
@@ -85,7 +85,7 @@ Name | Type | Description  | Notes
 
 ## find_pets_by_status
 
-> Vec<::models::Pet> find_pets_by_status(ctx, status)
+> Vec<crate::models::Pet> find_pets_by_status(ctx, status)
 Finds Pets by status
 
 Multiple status values can be provided with comma separated strings
@@ -100,7 +100,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**Vec<::models::Pet>**](Pet.md)
+[**Vec<crate::models::Pet>**](Pet.md)
 
 ### Authorization
 
@@ -116,7 +116,7 @@ Name | Type | Description  | Notes
 
 ## find_pets_by_tags
 
-> Vec<::models::Pet> find_pets_by_tags(ctx, tags)
+> Vec<crate::models::Pet> find_pets_by_tags(ctx, tags)
 Finds Pets by tags
 
 Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
@@ -131,7 +131,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**Vec<::models::Pet>**](Pet.md)
+[**Vec<crate::models::Pet>**](Pet.md)
 
 ### Authorization
 
@@ -147,7 +147,7 @@ Name | Type | Description  | Notes
 
 ## get_pet_by_id
 
-> ::models::Pet get_pet_by_id(ctx, pet_id)
+> crate::models::Pet get_pet_by_id(ctx, pet_id)
 Find pet by ID
 
 Returns a single pet
@@ -162,7 +162,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::Pet**](Pet.md)
+[**crate::models::Pet**](Pet.md)
 
 ### Authorization
 
@@ -247,7 +247,7 @@ Name | Type | Description  | Notes
 
 ## upload_file
 
-> ::models::ApiResponse upload_file(ctx, pet_id, optional)
+> crate::models::ApiResponse upload_file(ctx, pet_id, optional)
 uploads an image
 
 ### Required Parameters
@@ -271,7 +271,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::ApiResponse**](ApiResponse.md)
+[**crate::models::ApiResponse**](ApiResponse.md)
 
 ### Authorization
 
diff --git a/samples/client/petstore/rust/docs/StoreApi.md b/samples/client/petstore/rust/docs/StoreApi.md
index 1e4bdc3e14a9824ba0f3fb5a4ea3d0099d48eb1d..16a09fae3fa770839e78bfc8d5bcb511c456ea69 100644
--- a/samples/client/petstore/rust/docs/StoreApi.md
+++ b/samples/client/petstore/rust/docs/StoreApi.md
@@ -70,7 +70,7 @@ This endpoint does not need any parameter.
 
 ## get_order_by_id
 
-> ::models::Order get_order_by_id(order_id)
+> crate::models::Order get_order_by_id(order_id)
 Find purchase order by ID
 
 For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
@@ -84,7 +84,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::Order**](Order.md)
+[**crate::models::Order**](Order.md)
 
 ### Authorization
 
@@ -100,7 +100,7 @@ No authorization required
 
 ## place_order
 
-> ::models::Order place_order(body)
+> crate::models::Order place_order(body)
 Place an order for a pet
 
 ### Required Parameters
@@ -112,7 +112,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::Order**](Order.md)
+[**crate::models::Order**](Order.md)
 
 ### Authorization
 
diff --git a/samples/client/petstore/rust/docs/UserApi.md b/samples/client/petstore/rust/docs/UserApi.md
index ffa733d64defad6f390f8fa427d3935105904c83..9c4af81392a47632a9dfaecfe3a9129ba929d612 100644
--- a/samples/client/petstore/rust/docs/UserApi.md
+++ b/samples/client/petstore/rust/docs/UserApi.md
@@ -55,7 +55,7 @@ Creates list of users with given input array
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
-  **body** | [**Vec<::models::User>**](User.md)| List of user object | 
+  **body** | [**Vec<crate::models::User>**](User.md)| List of user object | 
 
 ### Return type
 
@@ -83,7 +83,7 @@ Creates list of users with given input array
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
-  **body** | [**Vec<::models::User>**](User.md)| List of user object | 
+  **body** | [**Vec<crate::models::User>**](User.md)| List of user object | 
 
 ### Return type
 
@@ -133,7 +133,7 @@ No authorization required
 
 ## get_user_by_name
 
-> ::models::User get_user_by_name(username)
+> crate::models::User get_user_by_name(username)
 Get user by user name
 
 ### Required Parameters
@@ -145,7 +145,7 @@ Name | Type | Description  | Notes
 
 ### Return type
 
-[**::models::User**](User.md)
+[**crate::models::User**](User.md)
 
 ### Authorization
 
diff --git a/samples/client/petstore/rust/src/apis/client.rs b/samples/client/petstore/rust/src/apis/client.rs
index ddf5f6ee086d59558f9172509360c023b48f1ebe..dd0de97eb53e2d2c66488f33de9b9da7a7d9433d 100644
--- a/samples/client/petstore/rust/src/apis/client.rs
+++ b/samples/client/petstore/rust/src/apis/client.rs
@@ -5,9 +5,9 @@ use super::configuration::Configuration;
 
 pub struct APIClient<C: hyper::client::Connect> {
     configuration: Rc<Configuration<C>>,
-    pet_api: Box<::apis::PetApi>,
-    store_api: Box<::apis::StoreApi>,
-    user_api: Box<::apis::UserApi>,
+    pet_api: Box<crate::apis::PetApi>,
+    store_api: Box<crate::apis::StoreApi>,
+    user_api: Box<crate::apis::UserApi>,
 }
 
 impl<C: hyper::client::Connect> APIClient<C> {
@@ -16,21 +16,21 @@ impl<C: hyper::client::Connect> APIClient<C> {
 
         APIClient {
             configuration: rc.clone(),
-            pet_api: Box::new(::apis::PetApiClient::new(rc.clone())),
-            store_api: Box::new(::apis::StoreApiClient::new(rc.clone())),
-            user_api: Box::new(::apis::UserApiClient::new(rc.clone())),
+            pet_api: Box::new(crate::apis::PetApiClient::new(rc.clone())),
+            store_api: Box::new(crate::apis::StoreApiClient::new(rc.clone())),
+            user_api: Box::new(crate::apis::UserApiClient::new(rc.clone())),
         }
     }
 
-    pub fn pet_api(&self) -> &::apis::PetApi{
+    pub fn pet_api(&self) -> &crate::apis::PetApi{
         self.pet_api.as_ref()
     }
 
-    pub fn store_api(&self) -> &::apis::StoreApi{
+    pub fn store_api(&self) -> &crate::apis::StoreApi{
         self.store_api.as_ref()
     }
 
-    pub fn user_api(&self) -> &::apis::UserApi{
+    pub fn user_api(&self) -> &crate::apis::UserApi{
         self.user_api.as_ref()
     }
 
diff --git a/samples/client/petstore/rust/src/apis/pet_api.rs b/samples/client/petstore/rust/src/apis/pet_api.rs
index 0c98efec5cf03c8f05620903585ff80562edfe41..e3fe372fc9b2f07720595d58f1f8cff0f4f5b11a 100644
--- a/samples/client/petstore/rust/src/apis/pet_api.rs
+++ b/samples/client/petstore/rust/src/apis/pet_api.rs
@@ -31,19 +31,19 @@ impl<C: hyper::client::Connect> PetApiClient<C> {
 }
 
 pub trait PetApi {
-    fn add_pet(&self, body: ::models::Pet) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
+    fn add_pet(&self, body: crate::models::Pet) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
     fn delete_pet(&self, pet_id: i64, api_key: &str) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
-    fn find_pets_by_status(&self, status: Vec<String>) -> Box<Future<Item = Vec<::models::Pet>, Error = Error<serde_json::Value>>>;
-    fn find_pets_by_tags(&self, tags: Vec<String>) -> Box<Future<Item = Vec<::models::Pet>, Error = Error<serde_json::Value>>>;
-    fn get_pet_by_id(&self, pet_id: i64) -> Box<Future<Item = ::models::Pet, Error = Error<serde_json::Value>>>;
-    fn update_pet(&self, body: ::models::Pet) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
+    fn find_pets_by_status(&self, status: Vec<String>) -> Box<Future<Item = Vec<crate::models::Pet>, Error = Error<serde_json::Value>>>;
+    fn find_pets_by_tags(&self, tags: Vec<String>) -> Box<Future<Item = Vec<crate::models::Pet>, Error = Error<serde_json::Value>>>;
+    fn get_pet_by_id(&self, pet_id: i64) -> Box<Future<Item = crate::models::Pet, Error = Error<serde_json::Value>>>;
+    fn update_pet(&self, body: crate::models::Pet) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
     fn update_pet_with_form(&self, pet_id: i64, name: &str, status: &str) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
-    fn upload_file(&self, pet_id: i64, additional_metadata: &str, file: std::path::PathBuf) -> Box<Future<Item = ::models::ApiResponse, Error = Error<serde_json::Value>>>;
+    fn upload_file(&self, pet_id: i64, additional_metadata: &str, file: std::path::PathBuf) -> Box<Future<Item = crate::models::ApiResponse, Error = Error<serde_json::Value>>>;
 }
 
 
 impl<C: hyper::client::Connect>PetApi for PetApiClient<C> {
-    fn add_pet(&self, body: ::models::Pet) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
+    fn add_pet(&self, body: crate::models::Pet) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Post, "/pet".to_string())
             .with_auth(__internal_request::Auth::Oauth)
             .with_body_param(body)
@@ -60,21 +60,21 @@ impl<C: hyper::client::Connect>PetApi for PetApiClient<C> {
             .execute(self.configuration.borrow())
     }
 
-    fn find_pets_by_status(&self, status: Vec<String>) -> Box<Future<Item = Vec<::models::Pet>, Error = Error<serde_json::Value>>> {
+    fn find_pets_by_status(&self, status: Vec<String>) -> Box<Future<Item = Vec<crate::models::Pet>, Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Get, "/pet/findByStatus".to_string())
             .with_auth(__internal_request::Auth::Oauth)
             .with_query_param("status".to_string(), status.join(",").to_string())
             .execute(self.configuration.borrow())
     }
 
-    fn find_pets_by_tags(&self, tags: Vec<String>) -> Box<Future<Item = Vec<::models::Pet>, Error = Error<serde_json::Value>>> {
+    fn find_pets_by_tags(&self, tags: Vec<String>) -> Box<Future<Item = Vec<crate::models::Pet>, Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Get, "/pet/findByTags".to_string())
             .with_auth(__internal_request::Auth::Oauth)
             .with_query_param("tags".to_string(), tags.join(",").to_string())
             .execute(self.configuration.borrow())
     }
 
-    fn get_pet_by_id(&self, pet_id: i64) -> Box<Future<Item = ::models::Pet, Error = Error<serde_json::Value>>> {
+    fn get_pet_by_id(&self, pet_id: i64) -> Box<Future<Item = crate::models::Pet, Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Get, "/pet/{petId}".to_string())
             .with_auth(__internal_request::Auth::ApiKey(__internal_request::ApiKey{
                 in_header: true,
@@ -85,7 +85,7 @@ impl<C: hyper::client::Connect>PetApi for PetApiClient<C> {
             .execute(self.configuration.borrow())
     }
 
-    fn update_pet(&self, body: ::models::Pet) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
+    fn update_pet(&self, body: crate::models::Pet) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Put, "/pet".to_string())
             .with_auth(__internal_request::Auth::Oauth)
             .with_body_param(body)
@@ -103,7 +103,7 @@ impl<C: hyper::client::Connect>PetApi for PetApiClient<C> {
             .execute(self.configuration.borrow())
     }
 
-    fn upload_file(&self, pet_id: i64, additional_metadata: &str, file: std::path::PathBuf) -> Box<Future<Item = ::models::ApiResponse, Error = Error<serde_json::Value>>> {
+    fn upload_file(&self, pet_id: i64, additional_metadata: &str, file: std::path::PathBuf) -> Box<Future<Item = crate::models::ApiResponse, Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Post, "/pet/{petId}/uploadImage".to_string())
             .with_auth(__internal_request::Auth::Oauth)
             .with_path_param("petId".to_string(), pet_id.to_string())
diff --git a/samples/client/petstore/rust/src/apis/store_api.rs b/samples/client/petstore/rust/src/apis/store_api.rs
index 46f0bf53cf4231c6ddff827086fb63e696ad5b88..2c827cce045231171ebb3827149af4cd0e2bda77 100644
--- a/samples/client/petstore/rust/src/apis/store_api.rs
+++ b/samples/client/petstore/rust/src/apis/store_api.rs
@@ -33,8 +33,8 @@ impl<C: hyper::client::Connect> StoreApiClient<C> {
 pub trait StoreApi {
     fn delete_order(&self, order_id: &str) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
     fn get_inventory(&self, ) -> Box<Future<Item = ::std::collections::HashMap<String, i32>, Error = Error<serde_json::Value>>>;
-    fn get_order_by_id(&self, order_id: i64) -> Box<Future<Item = ::models::Order, Error = Error<serde_json::Value>>>;
-    fn place_order(&self, body: ::models::Order) -> Box<Future<Item = ::models::Order, Error = Error<serde_json::Value>>>;
+    fn get_order_by_id(&self, order_id: i64) -> Box<Future<Item = crate::models::Order, Error = Error<serde_json::Value>>>;
+    fn place_order(&self, body: crate::models::Order) -> Box<Future<Item = crate::models::Order, Error = Error<serde_json::Value>>>;
 }
 
 
@@ -56,13 +56,13 @@ impl<C: hyper::client::Connect>StoreApi for StoreApiClient<C> {
             .execute(self.configuration.borrow())
     }
 
-    fn get_order_by_id(&self, order_id: i64) -> Box<Future<Item = ::models::Order, Error = Error<serde_json::Value>>> {
+    fn get_order_by_id(&self, order_id: i64) -> Box<Future<Item = crate::models::Order, Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Get, "/store/order/{orderId}".to_string())
             .with_path_param("orderId".to_string(), order_id.to_string())
             .execute(self.configuration.borrow())
     }
 
-    fn place_order(&self, body: ::models::Order) -> Box<Future<Item = ::models::Order, Error = Error<serde_json::Value>>> {
+    fn place_order(&self, body: crate::models::Order) -> Box<Future<Item = crate::models::Order, Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Post, "/store/order".to_string())
             .with_body_param(body)
             .execute(self.configuration.borrow())
diff --git a/samples/client/petstore/rust/src/apis/user_api.rs b/samples/client/petstore/rust/src/apis/user_api.rs
index ba3ad140b46feb1e912586e3244454a5a2ddfe11..1ea00f7536d7ad8d98f496077c57d6dcd53659a1 100644
--- a/samples/client/petstore/rust/src/apis/user_api.rs
+++ b/samples/client/petstore/rust/src/apis/user_api.rs
@@ -31,33 +31,33 @@ impl<C: hyper::client::Connect> UserApiClient<C> {
 }
 
 pub trait UserApi {
-    fn create_user(&self, body: ::models::User) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
-    fn create_users_with_array_input(&self, body: Vec<::models::User>) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
-    fn create_users_with_list_input(&self, body: Vec<::models::User>) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
+    fn create_user(&self, body: crate::models::User) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
+    fn create_users_with_array_input(&self, body: Vec<crate::models::User>) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
+    fn create_users_with_list_input(&self, body: Vec<crate::models::User>) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
     fn delete_user(&self, username: &str) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
-    fn get_user_by_name(&self, username: &str) -> Box<Future<Item = ::models::User, Error = Error<serde_json::Value>>>;
+    fn get_user_by_name(&self, username: &str) -> Box<Future<Item = crate::models::User, Error = Error<serde_json::Value>>>;
     fn login_user(&self, username: &str, password: &str) -> Box<Future<Item = String, Error = Error<serde_json::Value>>>;
     fn logout_user(&self, ) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
-    fn update_user(&self, username: &str, body: ::models::User) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
+    fn update_user(&self, username: &str, body: crate::models::User) -> Box<Future<Item = (), Error = Error<serde_json::Value>>>;
 }
 
 
 impl<C: hyper::client::Connect>UserApi for UserApiClient<C> {
-    fn create_user(&self, body: ::models::User) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
+    fn create_user(&self, body: crate::models::User) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Post, "/user".to_string())
             .with_body_param(body)
             .returns_nothing()
             .execute(self.configuration.borrow())
     }
 
-    fn create_users_with_array_input(&self, body: Vec<::models::User>) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
+    fn create_users_with_array_input(&self, body: Vec<crate::models::User>) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Post, "/user/createWithArray".to_string())
             .with_body_param(body)
             .returns_nothing()
             .execute(self.configuration.borrow())
     }
 
-    fn create_users_with_list_input(&self, body: Vec<::models::User>) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
+    fn create_users_with_list_input(&self, body: Vec<crate::models::User>) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Post, "/user/createWithList".to_string())
             .with_body_param(body)
             .returns_nothing()
@@ -71,7 +71,7 @@ impl<C: hyper::client::Connect>UserApi for UserApiClient<C> {
             .execute(self.configuration.borrow())
     }
 
-    fn get_user_by_name(&self, username: &str) -> Box<Future<Item = ::models::User, Error = Error<serde_json::Value>>> {
+    fn get_user_by_name(&self, username: &str) -> Box<Future<Item = crate::models::User, Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Get, "/user/{username}".to_string())
             .with_path_param("username".to_string(), username.to_string())
             .execute(self.configuration.borrow())
@@ -90,7 +90,7 @@ impl<C: hyper::client::Connect>UserApi for UserApiClient<C> {
             .execute(self.configuration.borrow())
     }
 
-    fn update_user(&self, username: &str, body: ::models::User) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
+    fn update_user(&self, username: &str, body: crate::models::User) -> Box<Future<Item = (), Error = Error<serde_json::Value>>> {
         __internal_request::Request::new(hyper::Method::Put, "/user/{username}".to_string())
             .with_path_param("username".to_string(), username.to_string())
             .with_body_param(body)
diff --git a/samples/client/petstore/rust/src/models/api_response.rs b/samples/client/petstore/rust/src/models/api_response.rs
index 7884fba590ea7d47a79aeb311385869e7daf78b2..814483602dd38443e192587db11a0de36eabc365 100644
--- a/samples/client/petstore/rust/src/models/api_response.rs
+++ b/samples/client/petstore/rust/src/models/api_response.rs
@@ -10,9 +10,6 @@
 
 /// ApiResponse : Describes the result of uploading an image resource
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct ApiResponse {
diff --git a/samples/client/petstore/rust/src/models/category.rs b/samples/client/petstore/rust/src/models/category.rs
index 804f9f4c70777b6c1b278c65da7338ea5287cce0..8cb5797ee1cd280185657713bda2f318309209bb 100644
--- a/samples/client/petstore/rust/src/models/category.rs
+++ b/samples/client/petstore/rust/src/models/category.rs
@@ -10,9 +10,6 @@
 
 /// Category : A category for a pet
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct Category {
diff --git a/samples/client/petstore/rust/src/models/order.rs b/samples/client/petstore/rust/src/models/order.rs
index 118dc3107671df792d559b999f1341b96dbf978d..24ad342497af137e55c86e62eec7cd522f1b1231 100644
--- a/samples/client/petstore/rust/src/models/order.rs
+++ b/samples/client/petstore/rust/src/models/order.rs
@@ -10,9 +10,6 @@
 
 /// Order : An order for a pets from the pet store
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct Order {
diff --git a/samples/client/petstore/rust/src/models/pet.rs b/samples/client/petstore/rust/src/models/pet.rs
index 64dae06e4540da8a850bbdb64dfa42439cea36c5..e3c61239cdcec34a6609de5bc321d721a6d33542 100644
--- a/samples/client/petstore/rust/src/models/pet.rs
+++ b/samples/client/petstore/rust/src/models/pet.rs
@@ -10,22 +10,19 @@
 
 /// Pet : A pet for sale in the pet store
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct Pet {
     #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
     pub id: Option<i64>,
     #[serde(rename = "category", skip_serializing_if = "Option::is_none")]
-    pub category: Option<::models::Category>,
+    pub category: Option<crate::models::Category>,
     #[serde(rename = "name")]
     pub name: String,
     #[serde(rename = "photoUrls")]
     pub photo_urls: Vec<String>,
     #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
-    pub tags: Option<Vec<::models::Tag>>,
+    pub tags: Option<Vec<crate::models::Tag>>,
     /// pet status in the store
     #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
     pub status: Option<String>,
diff --git a/samples/client/petstore/rust/src/models/tag.rs b/samples/client/petstore/rust/src/models/tag.rs
index 503fb7f61bd7972d863e9f36b837ad35fc98ad91..c7cbdf2cc05a614246ce0c613a3b6c71e2b15632 100644
--- a/samples/client/petstore/rust/src/models/tag.rs
+++ b/samples/client/petstore/rust/src/models/tag.rs
@@ -10,9 +10,6 @@
 
 /// Tag : A tag for a pet
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct Tag {
diff --git a/samples/client/petstore/rust/src/models/user.rs b/samples/client/petstore/rust/src/models/user.rs
index 6bfa6e2167ad904035b605745327ce554c032f86..e54ed70130645c87b4f9496867cbd0a7e10b3df1 100644
--- a/samples/client/petstore/rust/src/models/user.rs
+++ b/samples/client/petstore/rust/src/models/user.rs
@@ -10,9 +10,6 @@
 
 /// User : A User who is purchasing from the pet store
 
-#[allow(unused_imports)]
-use serde_json::Value;
-
 
 #[derive(Debug, Serialize, Deserialize)]
 pub struct User {
diff --git a/samples/client/petstore/swift4/default/.openapi-generator/VERSION b/samples/client/petstore/swift4/default/.openapi-generator/VERSION
index afa6365606414bf56f925745712166af5b4a2be0..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/swift4/default/.openapi-generator/VERSION
+++ b/samples/client/petstore/swift4/default/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.0-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/swift4/default/Info.plist b/samples/client/petstore/swift4/default/Info.plist
new file mode 100644
index 0000000000000000000000000000000000000000..323e5ecfc420ad71d4ea6890405ca4af8a03bafd
--- /dev/null
+++ b/samples/client/petstore/swift4/default/Info.plist
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>$(DEVELOPMENT_LANGUAGE)</string>
+	<key>CFBundleExecutable</key>
+	<string>$(EXECUTABLE_NAME)</string>
+	<key>CFBundleIdentifier</key>
+	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>$(PRODUCT_NAME)</string>
+	<key>CFBundlePackageType</key>
+	<string>FMWK</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleVersion</key>
+	<string>1</string>
+</dict>
+</plist>
diff --git a/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000000000000000000000000000000000..6d0f6ef15b4b1acdc6ba92287c10791cf1c58a3d
--- /dev/null
+++ b/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/project.pbxproj
@@ -0,0 +1,569 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 50;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */; };
+		0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */; };
+		08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */; };
+		1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */; };
+		122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */; };
+		12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */; };
+		12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */; };
+		16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */; };
+		18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 212AA914B7F1793A4E32C119370FB05F /* Cat.swift */; };
+		196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */; };
+		271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */; };
+		293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */; };
+		297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */; };
+		2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */; };
+		2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */; };
+		3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */; };
+		36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */; };
+		3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */; };
+		41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */; };
+		42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */; };
+		491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */; };
+		4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */; };
+		58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */; };
+		59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */; };
+		59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */; };
+		5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */; };
+		655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */; };
+		6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */; };
+		6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */; };
+		7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */; };
+		82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */; };
+		83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */; };
+		92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = A913A57E72D723632E9A718FF4525C81 /* Client.swift */; };
+		97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */; };
+		A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */; };
+		A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */; };
+		A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */; };
+		AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */; };
+		B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */; };
+		BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */; };
+		C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */; };
+		C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A6070F581E611FF44AFD40A4315C49A /* List.swift */; };
+		C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */; };
+		C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */; };
+		D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */; };
+		D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */; };
+		DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */; };
+		DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */; };
+		DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */; };
+		DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */; };
+		E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 386FD590658E90509C121118F057604D /* SpecialModelName.swift */; };
+		E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */; };
+		F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8699F7966F748ED026A6FB4CF550442B /* Models.swift */; };
+		F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = C81447828475F76C5CF4F08AA65292F7 /* Return.swift */; };
+		FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */; };
+		FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+		02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodableHelper.swift; sourceTree = "<group>"; };
+		10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = "<group>"; };
+		164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderExample.swift; sourceTree = "<group>"; };
+		212AA914B7F1793A4E32C119370FB05F /* Cat.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = "<group>"; };
+		27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = "<group>"; };
+		28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = "<group>"; };
+		3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = "<group>"; };
+		35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodingHelper.swift; sourceTree = "<group>"; };
+		37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIs.swift; sourceTree = "<group>"; };
+		386FD590658E90509C121118F057604D /* SpecialModelName.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = "<group>"; };
+		3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = "<group>"; };
+		396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CatAllOf.swift; sourceTree = "<group>"; };
+		3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = "<group>"; };
+		47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = "<group>"; };
+		4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = "<group>"; };
+		4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = "<group>"; };
+		4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = "<group>"; };
+		5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = "<group>"; };
+		6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = "<group>"; };
+		6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = "<group>"; };
+		6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = "<group>"; };
+		7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = "<group>"; };
+		7A6070F581E611FF44AFD40A4315C49A /* List.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = "<group>"; };
+		7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = "<group>"; };
+		82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = "<group>"; };
+		84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlamofireImplementations.swift; sourceTree = "<group>"; };
+		8699F7966F748ED026A6FB4CF550442B /* Models.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Models.swift; sourceTree = "<group>"; };
+		897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIHelper.swift; sourceTree = "<group>"; };
+		8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = "<group>"; };
+		95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = "<group>"; };
+		9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodableEncoding.swift; sourceTree = "<group>"; };
+		9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = "<group>"; };
+		9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = "<group>"; };
+		A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DogAllOf.swift; sourceTree = "<group>"; };
+		A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Alamofire.framework; sourceTree = "<group>"; };
+		A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = "<group>"; };
+		A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = "<group>"; };
+		A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = "<group>"; };
+		A913A57E72D723632E9A718FF4525C81 /* Client.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = "<group>"; };
+		B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = "<group>"; };
+		B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = "<group>"; };
+		B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = "<group>"; };
+		B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = "<group>"; };
+		C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = "<group>"; };
+		C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = "<group>"; };
+		C81447828475F76C5CF4F08AA65292F7 /* Return.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = "<group>"; };
+		E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = "<group>"; };
+		EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderDefault.swift; sourceTree = "<group>"; };
+		ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = "<group>"; };
+		F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = "<group>"; };
+		F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = "<group>"; };
+		FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				7861EE241895128F64DD787367B3022D /* Carthage */,
+			);
+			name = Frameworks;
+			sourceTree = "<group>";
+		};
+		4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */ = {
+			isa = PBXGroup;
+			children = (
+				396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */,
+				95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */,
+				8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */,
+				A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */,
+				7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */,
+				B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */,
+				F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */,
+				A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */,
+				212AA914B7F1793A4E32C119370FB05F /* Cat.swift */,
+				3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */,
+				6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */,
+				3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */,
+				A913A57E72D723632E9A718FF4525C81 /* Client.swift */,
+				C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */,
+				A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */,
+				10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */,
+				4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */,
+				FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */,
+				3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */,
+				4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */,
+				3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */,
+				4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */,
+				7A6070F581E611FF44AFD40A4315C49A /* List.swift */,
+				7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */,
+				9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */,
+				82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */,
+				5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */,
+				B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */,
+				27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */,
+				F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */,
+				C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */,
+				ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */,
+				6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */,
+				C81447828475F76C5CF4F08AA65292F7 /* Return.swift */,
+				386FD590658E90509C121118F057604D /* SpecialModelName.swift */,
+				47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */,
+				B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */,
+				EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */,
+				19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */,
+				E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */,
+			);
+			path = Models;
+			sourceTree = "<group>";
+		};
+		5FBA6AE5F64CD737F88B4565AC3CCD3B = {
+			isa = PBXGroup;
+			children = (
+				9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */,
+				1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */,
+				857F0DEA1890CE66D6DAD556C55821A6 /* Products */,
+			);
+			sourceTree = "<group>";
+		};
+		67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */ = {
+			isa = PBXGroup;
+			children = (
+				84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */,
+				897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */,
+				37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */,
+				02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */,
+				28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */,
+				B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */,
+				9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */,
+				35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */,
+				8699F7966F748ED026A6FB4CF550442B /* Models.swift */,
+				F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */,
+				4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */,
+			);
+			path = OpenAPIs;
+			sourceTree = "<group>";
+		};
+		7861EE241895128F64DD787367B3022D /* Carthage */ = {
+			isa = PBXGroup;
+			children = (
+				A012205B41CB71A62B86EECDEAFB0990 /* iOS */,
+			);
+			name = Carthage;
+			path = Carthage/Build;
+			sourceTree = "<group>";
+		};
+		857F0DEA1890CE66D6DAD556C55821A6 /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+		9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */ = {
+			isa = PBXGroup;
+			children = (
+				EF4C81BDD734856ED5023B777D35098B /* Classes */,
+			);
+			path = PetstoreClient;
+			sourceTree = "<group>";
+		};
+		A012205B41CB71A62B86EECDEAFB0990 /* iOS */ = {
+			isa = PBXGroup;
+			children = (
+				A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */,
+			);
+			path = iOS;
+			sourceTree = "<group>";
+		};
+		EF4C81BDD734856ED5023B777D35098B /* Classes */ = {
+			isa = PBXGroup;
+			children = (
+				67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */,
+			);
+			path = Classes;
+			sourceTree = "<group>";
+		};
+		F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */ = {
+			isa = PBXGroup;
+			children = (
+				9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */,
+				6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */,
+				B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */,
+				9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */,
+				A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */,
+				7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */,
+			);
+			path = APIs;
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+		C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */;
+			buildPhases = (
+				E539708354CE60FE486F81EDE56D13C8 /* Sources */,
+				D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = PetstoreClient;
+			productName = PetstoreClient;
+			productReference = 164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */;
+			productType = "com.apple.product-type.framework";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		E7D276EE2369D8C455513C2E05F9AED0 /* Project object */ = {
+			isa = PBXProject;
+			attributes = {
+				LastUpgradeCheck = 1000;
+			};
+			buildConfigurationList = ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */;
+			compatibilityVersion = "Xcode 9.3";
+			developmentRegion = en;
+			hasScannedForEncodings = 0;
+			knownRegions = (
+				en,
+			);
+			mainGroup = 5FBA6AE5F64CD737F88B4565AC3CCD3B;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+				C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXSourcesBuildPhase section */
+		E539708354CE60FE486F81EDE56D13C8 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */,
+				0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */,
+				12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */,
+				58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */,
+				02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */,
+				DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */,
+				83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */,
+				97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */,
+				3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */,
+				A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */,
+				C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */,
+				7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */,
+				18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */,
+				41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */,
+				42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */,
+				5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */,
+				92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */,
+				6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */,
+				DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */,
+				D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */,
+				271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */,
+				A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */,
+				59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */,
+				08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */,
+				C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */,
+				297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */,
+				A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */,
+				FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */,
+				491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */,
+				36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */,
+				DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */,
+				16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */,
+				12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */,
+				C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */,
+				655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */,
+				D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */,
+				2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */,
+				F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */,
+				C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */,
+				AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */,
+				59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */,
+				82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */,
+				1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */,
+				B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */,
+				3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */,
+				293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */,
+				F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */,
+				E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */,
+				122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */,
+				196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */,
+				E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */,
+				6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */,
+				FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */,
+				BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */,
+				DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+		3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Release;
+		};
+		A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_TESTABILITY = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"$(inherited)",
+					"DEBUG=1",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+				SWIFT_VERSION = 4.2;
+			};
+			name = Debug;
+		};
+		DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Debug;
+		};
+		F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
+				SWIFT_VERSION = 4.2;
+				VALIDATE_PRODUCT = YES;
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */,
+				3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = "";
+		};
+		ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */,
+				F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Debug;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = E7D276EE2369D8C455513C2E05F9AED0 /* Project object */;
+}
diff --git a/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000000000000000000000000000000000000..919434a6254f0e9651f402737811be6634a03e9c
--- /dev/null
+++ b/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:">
+   </FileRef>
+</Workspace>
diff --git a/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000000000000000000000000000000000000..18d981003d68d0546c4804ac2ff47dd97c6e7921
--- /dev/null
+++ b/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>IDEDidComputeMac32BitWarning</key>
+	<true/>
+</dict>
+</plist>
diff --git a/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme b/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
new file mode 100644
index 0000000000000000000000000000000000000000..7802e379453b951ec5f78c0f1c296a38b2ee90e4
--- /dev/null
+++ b/samples/client/petstore/swift4/default/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "1000"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+               BuildableName = "PetstoreClient.framework"
+               BlueprintName = "PetstoreClient"
+               ReferencedContainer = "container:PetstoreClient.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <CommandLineArguments>
+      </CommandLineArguments>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIHelper.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
index d94614b34fc71f50736db77e0d046bb2d356b30e..75dea24395752b328facec8e593fcac7ea470217 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
@@ -7,7 +7,7 @@
 import Foundation
 
 public struct APIHelper {
-    public static func rejectNil(_ source: [String:Any?]) -> [String:Any]? {
+    public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? {
         let destination = source.reduce(into: [String: Any]()) { (result, item) in
             if let value = item.value {
                 result[item.key] = value
@@ -20,17 +20,17 @@ public struct APIHelper {
         return destination
     }
 
-    public static func rejectNilHeaders(_ source: [String:Any?]) -> [String:String] {
+    public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] {
         return source.reduce(into: [String: String]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
-                result[item.key] = collection.filter({ $0 != nil }).map{ "\($0!)" }.joined(separator: ",")
+                result[item.key] = collection.filter({ $0 != nil }).map { "\($0!)" }.joined(separator: ",")
             } else if let value: Any = item.value {
                 result[item.key] = "\(value)"
             }
         }
     }
 
-    public static func convertBoolToString(_ source: [String: Any]?) -> [String:Any]? {
+    public static func convertBoolToString(_ source: [String: Any]?) -> [String: Any]? {
         guard let source = source else {
             return nil
         }
@@ -52,7 +52,7 @@ public struct APIHelper {
         return source
     }
 
-    public static func mapValuesToQueryItems(_ source: [String:Any?]) -> [URLQueryItem]? {
+    public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? {
         let destination = source.filter({ $0.value != nil}).reduce(into: [URLQueryItem]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
                 let value = collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",")
@@ -68,4 +68,3 @@ public struct APIHelper {
         return destination
     }
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs.swift
index 2890bffa2747d155c7c4c021610132c197ef2c83..9e4312f685de410bc328b2da41601768b1920229 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs.swift
@@ -9,22 +9,22 @@ import Foundation
 open class PetstoreClientAPI {
     public static var basePath = "http://petstore.swagger.io:80/v2"
     public static var credential: URLCredential?
-    public static var customHeaders: [String:String] = [:]
+    public static var customHeaders: [String: String] = [:]
     public static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory()
 }
 
 open class RequestBuilder<T> {
     var credential: URLCredential?
-    var headers: [String:String]
-    public let parameters: [String:Any]?
+    var headers: [String: String]
+    public let parameters: [String: Any]?
     public let isBody: Bool
     public let method: String
     public let URLString: String
 
     /// Optional block to obtain a reference to the request's progress instance when available.
-    public var onProgressReady: ((Progress) -> ())?
+    public var onProgressReady: ((Progress) -> Void)?
 
-    required public init(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         self.method = method
         self.URLString = URLString
         self.parameters = parameters
@@ -34,7 +34,7 @@ open class RequestBuilder<T> {
         addHeaders(PetstoreClientAPI.customHeaders)
     }
 
-    open func addHeaders(_ aHeaders:[String:String]) {
+    open func addHeaders(_ aHeaders: [String: String]) {
         for (header, value) in aHeaders {
             headers[header] = value
         }
@@ -57,5 +57,5 @@ open class RequestBuilder<T> {
 
 public protocol RequestBuilderFactory {
     func getNonDecodableBuilder<T>() -> RequestBuilder<T>.Type
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type
 }
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
index ffecb66c48c25d53c4b16c04fd9ea29704f4c870..30b346de0e1de39c998064f533ab75e67e925d46 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class AnotherFakeAPI {
     /**
      To test special tags
@@ -17,7 +15,7 @@ open class AnotherFakeAPI {
      - parameter body: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func call123testSpecialTags(body: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func call123testSpecialTags(body: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         call123testSpecialTagsWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
index 302767c2b0c2fff02217b3935503549bf98596d2..1073935592c04cf31999d5eff898f0e0015c8b4a 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
@@ -8,15 +8,13 @@
 import Foundation
 import Alamofire
 
-
-
 open class FakeAPI {
     /**
 
      - parameter body: (body) Input boolean as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterBooleanSerialize(body: Bool? = nil, completion: @escaping ((_ data: Bool?,_ error: Error?) -> Void)) {
+    open class func fakeOuterBooleanSerialize(body: Bool? = nil, completion: @escaping ((_ data: Bool?, _ error: Error?) -> Void)) {
         fakeOuterBooleanSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -45,7 +43,7 @@ open class FakeAPI {
      - parameter body: (body) Input composite as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, completion: @escaping ((_ data: OuterComposite?,_ error: Error?) -> Void)) {
+    open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, completion: @escaping ((_ data: OuterComposite?, _ error: Error?) -> Void)) {
         fakeOuterCompositeSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -74,7 +72,7 @@ open class FakeAPI {
      - parameter body: (body) Input number as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterNumberSerialize(body: Double? = nil, completion: @escaping ((_ data: Double?,_ error: Error?) -> Void)) {
+    open class func fakeOuterNumberSerialize(body: Double? = nil, completion: @escaping ((_ data: Double?, _ error: Error?) -> Void)) {
         fakeOuterNumberSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -103,7 +101,7 @@ open class FakeAPI {
      - parameter body: (body) Input string as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterStringSerialize(body: String? = nil, completion: @escaping ((_ data: String?,_ error: Error?) -> Void)) {
+    open class func fakeOuterStringSerialize(body: String? = nil, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
         fakeOuterStringSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -132,7 +130,7 @@ open class FakeAPI {
      - parameter body: (body)  
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -166,7 +164,7 @@ open class FakeAPI {
      - parameter body: (body)  
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -203,7 +201,7 @@ open class FakeAPI {
      - parameter body: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testClientModel(body: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func testClientModel(body: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         testClientModelWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -247,7 +245,7 @@ open class FakeAPI {
      - parameter callback: (form) None (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -283,7 +281,7 @@ open class FakeAPI {
     open class func testEndpointParametersWithRequestBuilder(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "integer": integer?.encodeToJSON(),
             "int32": int32?.encodeToJSON(),
             "int64": int64?.encodeToJSON(),
@@ -302,7 +300,7 @@ open class FakeAPI {
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -390,7 +388,7 @@ open class FakeAPI {
      - parameter enumFormString: (form) Form parameter enum test (string) (optional, default to .-efg)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -417,19 +415,19 @@ open class FakeAPI {
     open class func testEnumParametersWithRequestBuilder(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "enum_form_string_array": enumFormStringArray,
             "enum_form_string": enumFormString?.rawValue
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "enum_query_string_array": enumQueryStringArray, 
-            "enum_query_string": enumQueryString?.rawValue, 
-            "enum_query_integer": enumQueryInteger?.rawValue, 
+            "enum_query_string_array": enumQueryStringArray,
+            "enum_query_string": enumQueryString?.rawValue,
+            "enum_query_integer": enumQueryInteger?.rawValue,
             "enum_query_double": enumQueryDouble?.rawValue
         ])
         let nillableHeaders: [String: Any?] = [
@@ -454,7 +452,7 @@ open class FakeAPI {
      - parameter int64Group: (query) Integer in group parameters (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -479,13 +477,13 @@ open class FakeAPI {
     open class func testGroupParametersWithRequestBuilder(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "required_string_group": requiredStringGroup.encodeToJSON(), 
-            "required_int64_group": requiredInt64Group.encodeToJSON(), 
-            "string_group": stringGroup?.encodeToJSON(), 
+            "required_string_group": requiredStringGroup.encodeToJSON(),
+            "required_int64_group": requiredInt64Group.encodeToJSON(),
+            "string_group": stringGroup?.encodeToJSON(),
             "int64_group": int64Group?.encodeToJSON()
         ])
         let nillableHeaders: [String: Any?] = [
@@ -505,7 +503,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testInlineAdditionalProperties(param: [String:String], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testInlineAdditionalProperties(param: [String: String], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -521,7 +519,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - returns: RequestBuilder<Void> 
      */
-    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String:String]) -> RequestBuilder<Void> {
+    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String: String]) -> RequestBuilder<Void> {
         let path = "/fake/inline-additionalProperties"
         let URLString = PetstoreClientAPI.basePath + path
         let parameters = JSONEncodingHelper.encodingParameters(forEncodableObject: param)
@@ -540,7 +538,7 @@ open class FakeAPI {
      - parameter param2: (form) field2 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -560,14 +558,14 @@ open class FakeAPI {
     open class func testJsonFormDataWithRequestBuilder(param: String, param2: String) -> RequestBuilder<Void> {
         let path = "/fake/jsonFormData"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "param": param,
             "param2": param2
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
index ddfeae23edd0ba8ef0f297a5fd5e4d85781c4f83..6bfa09016f5a29ac2189b02e2986d8623a499a70 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class FakeClassnameTags123API {
     /**
      To test class name in snake case
@@ -17,7 +15,7 @@ open class FakeClassnameTags123API {
      - parameter body: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testClassname(body: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func testClassname(body: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         testClassnameWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
index 0a5dfeb39b62e92a76f21ba58190bc3de827380f..896f1511805f44687db6e8d35a9f0ff7182c6b2b 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class PetAPI {
     /**
      Add a new pet to the store
@@ -17,7 +15,7 @@ open class PetAPI {
      - parameter body: (body) Pet object that needs to be added to the store 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func addPet(body: Pet, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func addPet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         addPetWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -55,7 +53,7 @@ open class PetAPI {
      - parameter apiKey: (header)  (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deletePet(petId: Int64, apiKey: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func deletePet(petId: Int64, apiKey: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -81,8 +79,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
         let nillableHeaders: [String: Any?] = [
             "api_key": apiKey
@@ -109,7 +107,7 @@ open class PetAPI {
      - parameter status: (query) Status values that need to be considered for filter 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func findPetsByStatus(status: [String], completion: @escaping ((_ data: [Pet]?,_ error: Error?) -> Void)) {
+    open class func findPetsByStatus(status: [String], completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
         findPetsByStatusWithRequestBuilder(status: status).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -128,8 +126,8 @@ open class PetAPI {
     open class func findPetsByStatusWithRequestBuilder(status: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByStatus"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "status": status
@@ -146,7 +144,7 @@ open class PetAPI {
      - parameter tags: (query) Tags to filter by 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func findPetsByTags(tags: [String], completion: @escaping ((_ data: [Pet]?,_ error: Error?) -> Void)) {
+    open class func findPetsByTags(tags: [String], completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
         findPetsByTagsWithRequestBuilder(tags: tags).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -165,8 +163,8 @@ open class PetAPI {
     open class func findPetsByTagsWithRequestBuilder(tags: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByTags"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "tags": tags
@@ -183,7 +181,7 @@ open class PetAPI {
      - parameter petId: (path) ID of pet to return 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getPetById(petId: Int64, completion: @escaping ((_ data: Pet?,_ error: Error?) -> Void)) {
+    open class func getPetById(petId: Int64, completion: @escaping ((_ data: Pet?, _ error: Error?) -> Void)) {
         getPetByIdWithRequestBuilder(petId: petId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -205,8 +203,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Pet>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -220,7 +218,7 @@ open class PetAPI {
      - parameter body: (body) Pet object that needs to be added to the store 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updatePet(body: Pet, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func updatePet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         updatePetWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -259,7 +257,7 @@ open class PetAPI {
      - parameter status: (form) Updated status of the pet (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -286,14 +284,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "name": name,
             "status": status
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -309,7 +307,7 @@ open class PetAPI {
      - parameter file: (form) file to upload (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, completion: @escaping ((_ data: ApiResponse?,_ error: Error?) -> Void)) {
+    open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, completion: @escaping ((_ data: ApiResponse?, _ error: Error?) -> Void)) {
         uploadFileWithRequestBuilder(petId: petId, additionalMetadata: additionalMetadata, file: file).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -332,14 +330,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "file": file
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -355,7 +353,7 @@ open class PetAPI {
      - parameter additionalMetadata: (form) Additional data to pass to server (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil, completion: @escaping ((_ data: ApiResponse?,_ error: Error?) -> Void)) {
+    open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil, completion: @escaping ((_ data: ApiResponse?, _ error: Error?) -> Void)) {
         uploadFileWithRequiredFileWithRequestBuilder(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -378,14 +376,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "requiredFile": requiredFile
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
index a2bced598f0dc881287cb24338b768b2408384f0..71949b335d7787ed77427b9e35b68e55c6384567 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class StoreAPI {
     /**
      Delete purchase order by ID
@@ -17,7 +15,7 @@ open class StoreAPI {
      - parameter orderId: (path) ID of the order that needs to be deleted 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         deleteOrderWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -40,8 +38,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -54,7 +52,7 @@ open class StoreAPI {
      
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getInventory(completion: @escaping ((_ data: [String:Int]?,_ error: Error?) -> Void)) {
+    open class func getInventory(completion: @escaping ((_ data: [String: Int]?, _ error: Error?) -> Void)) {
         getInventoryWithRequestBuilder().execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -69,14 +67,14 @@ open class StoreAPI {
        - name: api_key
      - returns: RequestBuilder<[String:Int]> 
      */
-    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String:Int]> {
+    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String: Int]> {
         let path = "/store/inventory"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
-        let requestBuilder: RequestBuilder<[String:Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+        let requestBuilder: RequestBuilder<[String: Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
 
         return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false)
     }
@@ -87,7 +85,7 @@ open class StoreAPI {
      - parameter orderId: (path) ID of pet that needs to be fetched 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getOrderById(orderId: Int64, completion: @escaping ((_ data: Order?,_ error: Error?) -> Void)) {
+    open class func getOrderById(orderId: Int64, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
         getOrderByIdWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -106,8 +104,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Order>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -121,7 +119,7 @@ open class StoreAPI {
      - parameter body: (body) order placed for purchasing the pet 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func placeOrder(body: Order, completion: @escaping ((_ data: Order?,_ error: Error?) -> Void)) {
+    open class func placeOrder(body: Order, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
         placeOrderWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
index d8cafaf2c9627daa1b2363ffc5899e2ddb6344c5..efeb64468a5cd74eaf97915e41267dc9fceddb5e 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class UserAPI {
     /**
      Create user
@@ -17,7 +15,7 @@ open class UserAPI {
      - parameter body: (body) Created user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUser(body: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createUser(body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createUserWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -52,7 +50,7 @@ open class UserAPI {
      - parameter body: (body) List of user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUsersWithArrayInput(body: [User], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createUsersWithArrayInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createUsersWithArrayInputWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -86,7 +84,7 @@ open class UserAPI {
      - parameter body: (body) List of user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUsersWithListInput(body: [User], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createUsersWithListInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createUsersWithListInputWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -120,7 +118,7 @@ open class UserAPI {
      - parameter username: (path) The name that needs to be deleted 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deleteUser(username: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func deleteUser(username: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         deleteUserWithRequestBuilder(username: username).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -143,8 +141,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -158,7 +156,7 @@ open class UserAPI {
      - parameter username: (path) The name that needs to be fetched. Use user1 for testing. 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getUserByName(username: String, completion: @escaping ((_ data: User?,_ error: Error?) -> Void)) {
+    open class func getUserByName(username: String, completion: @escaping ((_ data: User?, _ error: Error?) -> Void)) {
         getUserByNameWithRequestBuilder(username: username).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -176,8 +174,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<User>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -192,7 +190,7 @@ open class UserAPI {
      - parameter password: (query) The password for login in clear text 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func loginUser(username: String, password: String, completion: @escaping ((_ data: String?,_ error: Error?) -> Void)) {
+    open class func loginUser(username: String, password: String, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
         loginUserWithRequestBuilder(username: username, password: password).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -209,11 +207,11 @@ open class UserAPI {
     open class func loginUserWithRequestBuilder(username: String, password: String) -> RequestBuilder<String> {
         let path = "/user/login"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "username": username, 
+            "username": username,
             "password": password
         ])
 
@@ -227,7 +225,7 @@ open class UserAPI {
      
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func logoutUser(completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func logoutUser(completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         logoutUserWithRequestBuilder().execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -245,8 +243,8 @@ open class UserAPI {
     open class func logoutUserWithRequestBuilder() -> RequestBuilder<Void> {
         let path = "/user/logout"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -261,7 +259,7 @@ open class UserAPI {
      - parameter body: (body) Updated user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updateUser(username: String, body: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func updateUser(username: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         updateUserWithRequestBuilder(username: username, body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
index dac40e9a31cfbf7c6194a337ddd9ab7cafb16b35..04ad02a5ce88e02b302bcdb3f9b02522a5509b5a 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
@@ -12,7 +12,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
         return AlamofireRequestBuilder<T>.self
     }
 
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type {
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type {
         return AlamofireDecodableRequestBuilder<T>.self
     }
 }
@@ -50,7 +50,7 @@ private struct SynchronizedDictionary<K: Hashable, V> {
 private var managerStore = SynchronizedDictionary<String, Alamofire.SessionManager>()
 
 open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
-    required public init(method: String, URLString: String, parameters: [String : Any]?, isBody: Bool, headers: [String : String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         super.init(method: method, URLString: URLString, parameters: parameters, isBody: isBody, headers: headers)
     }
 
@@ -88,17 +88,17 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
      May be overridden by a subclass if you want to control the request
      configuration (e.g. to override the cache policy).
      */
-    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String:String]) -> DataRequest {
+    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) -> DataRequest {
         return manager.request(URLString, method: method, parameters: parameters, encoding: encoding, headers: headers)
     }
 
     override open func execute(_ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
-        let managerId:String = UUID().uuidString
+        let managerId: String = UUID().uuidString
         // Create a new manager for each request to customize its request header
         let manager = createSessionManager()
         managerStore[managerId] = manager
 
-        let encoding:ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
+        let encoding: ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
 
         let xMethod = Alamofire.HTTPMethod(rawValue: method)
         let fileKeys = parameters == nil ? [] : parameters!.filter { $1 is NSURL }
@@ -111,8 +111,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
                     case let fileURL as URL:
                         if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
                             mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
-                        }
-                        else {
+                        } else {
                             mpForm.append(fileURL, withName: k)
                         }
                     case let string as String:
@@ -276,7 +275,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
         return httpHeaders
     }
 
-    fileprivate func getFileName(fromContentDisposition contentDisposition : String?) -> String? {
+    fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? {
 
         guard let contentDisposition = contentDisposition else {
             return nil
@@ -284,7 +283,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
         let items = contentDisposition.components(separatedBy: ";")
 
-        var filename : String? = nil
+        var filename: String? = nil
 
         for contentItem in items {
 
@@ -304,7 +303,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getPath(from url : URL) throws -> String {
+    fileprivate func getPath(from url: URL) throws -> String {
 
         guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else {
             throw DownloadException.requestMissingPath
@@ -318,7 +317,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getURL(from urlRequest : URLRequest) throws -> URL {
+    fileprivate func getURL(from urlRequest: URLRequest) throws -> URL {
 
         guard let url = urlRequest.url else {
             throw DownloadException.requestMissingURL
@@ -329,7 +328,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
 }
 
-fileprivate enum DownloadException : Error {
+private enum DownloadException: Error {
     case responseDataMissing
     case responseFailed
     case requestMissing
@@ -344,7 +343,7 @@ public enum AlamofireDecodableRequestBuilderError: Error {
     case generalError(Error)
 }
 
-open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilder<T> {
+open class AlamofireDecodableRequestBuilder<T: Decodable>: AlamofireRequestBuilder<T> {
 
     override fileprivate func processRequest(request: DataRequest, _ managerId: String, _ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
         if let credential = self.credential {
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
index 584de8c3d57a78a248749874fabd8245bf33f9fc..111d5a3a8cbe9afe5289cf58aa577d7c8f761a4a 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
@@ -13,7 +13,7 @@ open class CodableHelper {
 
     public static var dateformatter: DateFormatter?
 
-    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T : Decodable {
+    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable {
         var returnedDecodable: T? = nil
         var returnedError: Error? = nil
 
@@ -39,7 +39,7 @@ open class CodableHelper {
         return (returnedDecodable, returnedError)
     }
 
-    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T : Encodable {
+    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable {
         var returnedData: Data?
         var returnedError: Error? = nil
 
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Configuration.swift
index 516590da5d9e34183fdca8fef2901c7b53ab763b..e1ecb39726e7a8b435a6e688d95ddec9693fc3bc 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Configuration.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Configuration.swift
@@ -7,9 +7,9 @@
 import Foundation
 
 open class Configuration {
-	
+
 	// This value is used to configure the date formatter that is used to serialize dates into JSON format. 
 	// You must set it prior to encoding any dates, and it will only be read once. 
     public static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
-    
-}
\ No newline at end of file
+
+}
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Extensions.swift
index 8bf1829ba806b618d4e918b3c45a67c7a5a98803..24c128daadef77fdadd2629825a2d7ff04016e59 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Extensions.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Extensions.swift
@@ -112,24 +112,24 @@ extension String: CodingKey {
 
 extension KeyedEncodingContainerProtocol {
 
-    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T: Encodable {
         var arrayContainer = nestedUnkeyedContainer(forKey: key)
         try arrayContainer.encode(contentsOf: values)
     }
 
-    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable {
         if let values = values {
             try encodeArray(values, forKey: key)
         }
     }
 
-    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T : Encodable {
+    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T: Encodable {
         for (key, value) in pairs {
             try encode(value, forKey: key)
         }
     }
 
-    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T : Encodable {
+    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T: Encodable {
         if let pairs = pairs {
             try encodeMap(pairs)
         }
@@ -139,7 +139,7 @@ extension KeyedEncodingContainerProtocol {
 
 extension KeyedDecodingContainerProtocol {
 
-    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T : Decodable {
+    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable {
         var tmpArray = [T]()
 
         var nestedContainer = try nestedUnkeyedContainer(forKey: key)
@@ -151,7 +151,7 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T : Decodable {
+    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable {
         var tmpArray: [T]? = nil
 
         if contains(key) {
@@ -161,8 +161,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T : Decodable {
-        var map: [Self.Key : T] = [:]
+    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T: Decodable {
+        var map: [Self.Key: T] = [:]
 
         for key in allKeys {
             if !excludedKeys.contains(key) {
@@ -175,5 +175,3 @@ extension KeyedDecodingContainerProtocol {
     }
 
 }
-
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
index 70449515842de48fed6aec10ef246b1ad0f89e8b..3e68bb5d4a9b57609b955025cd250046c16fde0f 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
@@ -10,7 +10,7 @@ import Alamofire
 
 open class JSONEncodingHelper {
 
-    open class func encodingParameters<T:Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
+    open class func encodingParameters<T: Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
         var params: Parameters? = nil
 
         // Encode the Encodable object
@@ -39,5 +39,5 @@ open class JSONEncodingHelper {
 
         return params
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models.swift
index 408563890359088c1d97f24053ac1392706457bf..e87ce399c7c8b963ddee0f78a14a70a727751d1a 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models.swift
@@ -10,7 +10,7 @@ protocol JSONEncodable {
     func encodeToJSON() -> Any
 }
 
-public enum ErrorResponse : Error {
+public enum ErrorResponse: Error {
     case error(Int, Data?, Error)
 }
 
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
index 4db39adae84cafaa338f812343439b8f772de667..83a06951ccd657fb6d41f10cf42fc3b347213d3b 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
@@ -7,23 +7,19 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesClass: Codable {
 
-    public var mapString: [String:String]?
-    public var mapMapString: [String:[String:String]]?
+    public var mapString: [String: String]?
+    public var mapMapString: [String: [String: String]]?
 
-    public init(mapString: [String:String]?, mapMapString: [String:[String:String]]?) {
+    public init(mapString: [String: String]?, mapMapString: [String: [String: String]]?) {
         self.mapString = mapString
         self.mapMapString = mapMapString
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapString = "map_string"
         case mapMapString = "map_map_string"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
index 7221a1be099dd896259e2c830046272e01191d98..5ed9f31e2a364d0bf7a25bdf70cecb48af6ab5c4 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Animal: Codable {
 
     public var className: String
@@ -19,6 +17,4 @@ public struct Animal: Codable {
         self.color = color
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
index e7bea63f8ed28132865ea4d3c23eab55666cf4f6..e09b0e9efdc8ca7798114f24aff21f57e8f9fabd 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
@@ -7,5 +7,4 @@
 
 import Foundation
 
-
 public typealias AnimalFarm = [Animal]
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
index a22e9aaebbb06bf18c9bf8a5893ab3e0ece6945d..ec270da8907438877ee5cc303b093ceba3993297 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ApiResponse: Codable {
 
     public var code: Int?
@@ -21,6 +19,4 @@ public struct ApiResponse: Codable {
         self.message = message
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
index 4e5a5ca1445d9faf133bded5a5c89297ea7c5822..3843287630b100a8210c60aff75d4286a44e46a7 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfArrayOfNumberOnly: Codable {
 
     public var arrayArrayNumber: [[Double]]?
@@ -17,10 +15,8 @@ public struct ArrayOfArrayOfNumberOnly: Codable {
         self.arrayArrayNumber = arrayArrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayArrayNumber = "ArrayArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
index 7d059d36833987dc60886960363e11e328dbcee2..f8b198e81f50d4cf237000ed8dae7d47779f8bf4 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfNumberOnly: Codable {
 
     public var arrayNumber: [Double]?
@@ -17,10 +15,8 @@ public struct ArrayOfNumberOnly: Codable {
         self.arrayNumber = arrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayNumber = "ArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
index 9c56fed50c2e79b759cdaceb078c82da316b463d..67f7f7e5151fd3bca131124815c75a0d9f8ade28 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayTest: Codable {
 
     public var arrayOfString: [String]?
@@ -21,12 +19,10 @@ public struct ArrayTest: Codable {
         self.arrayArrayOfModel = arrayArrayOfModel
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayOfString = "array_of_string"
         case arrayArrayOfInteger = "array_array_of_integer"
         case arrayArrayOfModel = "array_array_of_model"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
index 98cda23dac9e7415bc9a1a2cd1dd98fa389d885d..d576b50b1c9c1f2c4c7b719c7800e4da183e49ba 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Capitalization: Codable {
 
     public var smallCamel: String?
@@ -28,7 +26,7 @@ public struct Capitalization: Codable {
         self.ATT_NAME = ATT_NAME
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case smallCamel
         case capitalCamel = "CapitalCamel"
         case smallSnake = "small_Snake"
@@ -37,6 +35,4 @@ public struct Capitalization: Codable {
         case ATT_NAME
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
index a116d964ea84b543abc96dd5273ab37c1fb897ee..7ab887f3113f1dd39f42b1019d8f58d45325f288 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Cat: Codable {
 
     public var className: String
@@ -21,6 +19,4 @@ public struct Cat: Codable {
         self.declawed = declawed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..a51ad0dffab1ba129591056cd816575af0e1ea09
--- /dev/null
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
@@ -0,0 +1,18 @@
+//
+// CatAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct CatAllOf: Codable {
+
+    public var declawed: Bool?
+
+    public init(declawed: Bool?) {
+        self.declawed = declawed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
index e8c489be460402c792f2379641088fae48de315f..eb8f7e5e1974989058473e4492c25c0004f1078c 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Category: Codable {
 
     public var id: Int64?
@@ -19,6 +17,4 @@ public struct Category: Codable {
         self.name = name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
index f673ed127cd8a545ae575acfcdee044768f8ae12..28cb30ce7b4bee968edc3cef6724572481551b91 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model with \&quot;_class\&quot; property */
 
 public struct ClassModel: Codable {
@@ -18,6 +17,4 @@ public struct ClassModel: Codable {
         self._class = _class
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
index 51390b6c4eac28e4df699b05a826a5da163ad0e4..00245ca37280eea9c87184eb0f40fb8bf03b81f2 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Client: Codable {
 
     public var client: String?
@@ -17,6 +15,4 @@ public struct Client: Codable {
         self.client = client
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
index 239ce74dcc2166d80a516ed215f31c1ad52fa930..492c1228008eb782ea0f927f65259ce2c7999d24 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Dog: Codable {
 
     public var className: String
@@ -21,6 +19,4 @@ public struct Dog: Codable {
         self.breed = breed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..7786f8acc5ae7d0de7de7248ef5a94d4d16f0a17
--- /dev/null
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
@@ -0,0 +1,18 @@
+//
+// DogAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct DogAllOf: Codable {
+
+    public var breed: String?
+
+    public init(breed: String?) {
+        self.breed = breed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
index 8713961520e11abb6206697029d5a1fd6be66f00..5034ff0b8c684d21a45c635f4a4b9de56fb3cda1 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumArrays: Codable {
 
     public enum JustSymbol: String, Codable {
@@ -27,11 +25,9 @@ public struct EnumArrays: Codable {
         self.arrayEnum = arrayEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justSymbol = "just_symbol"
         case arrayEnum = "array_enum"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
index 7280a621fec75a24fafa361025faea5190af9f45..3c1dfcac577d12c69319e42cac6ea851bf5dcf28 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum EnumClass: String, Codable {
     case abc = "_abc"
     case efg = "-efg"
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
index 0f546c76a2183956d59c7d5d7bbc345ce58e1d8b..6db9b34d183ba0f97c10db4a22d60e85b5b2a54c 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumTest: Codable {
 
     public enum EnumString: String, Codable {
@@ -43,7 +41,7 @@ public struct EnumTest: Codable {
         self.outerEnum = outerEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case enumString = "enum_string"
         case enumStringRequired = "enum_string_required"
         case enumInteger = "enum_integer"
@@ -51,6 +49,4 @@ public struct EnumTest: Codable {
         case outerEnum
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/File.swift
index c8bd1f19589b528c826d65c456ecf8d9cc974097..ea3520f053dd690ade411e20d80082a7acf57785 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/File.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/File.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Must be named &#x60;File&#x60; for test. */
 
 public struct File: Codable {
@@ -19,6 +18,4 @@ public struct File: Codable {
         self.sourceURI = sourceURI
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
index 64d025068027aa26974661ff1af66421b86d4ab8..532f1457939af300b65f89821673cf1951ec2f0b 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FileSchemaTestClass: Codable {
 
     public var file: File?
@@ -19,6 +17,4 @@ public struct FileSchemaTestClass: Codable {
         self.files = files
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
index faa091b0658c6bb4c9d7cd06d8942eac1c19d382..20bd6d103b3dc87ffa6d7f38b21d957318628930 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FormatTest: Codable {
 
     public var integer: Int?
@@ -41,6 +39,4 @@ public struct FormatTest: Codable {
         self.password = password
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
index 554aee1081aa470de93a2c36c484b6427a67698a..906ddb06fb170e5de30f07754fce3efc4f512ee1 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct HasOnlyReadOnly: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct HasOnlyReadOnly: Codable {
         self.foo = foo
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/List.swift
index 8997340ff4befe18cc8f2754c7ea92620406571c..08d59953873e4cf8f3c5c133c58cf78c4a70f41e 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/List.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/List.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct List: Codable {
 
     public var _123list: String?
@@ -17,10 +15,8 @@ public struct List: Codable {
         self._123list = _123list
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _123list = "123-list"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
index 2d3a45d35a0cb38fad72874cee84e18f4c874014..3a10a7dfcaf6078594c592d7714c5df8d194ba28 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
@@ -7,33 +7,29 @@
 
 import Foundation
 
-
-
 public struct MapTest: Codable {
 
     public enum MapOfEnumString: String, Codable {
         case upper = "UPPER"
         case lower = "lower"
     }
-    public var mapMapOfString: [String:[String:String]]?
-    public var mapOfEnumString: [String:String]?
-    public var directMap: [String:Bool]?
+    public var mapMapOfString: [String: [String: String]]?
+    public var mapOfEnumString: [String: String]?
+    public var directMap: [String: Bool]?
     public var indirectMap: StringBooleanMap?
 
-    public init(mapMapOfString: [String:[String:String]]?, mapOfEnumString: [String:String]?, directMap: [String:Bool]?, indirectMap: StringBooleanMap?) {
+    public init(mapMapOfString: [String: [String: String]]?, mapOfEnumString: [String: String]?, directMap: [String: Bool]?, indirectMap: StringBooleanMap?) {
         self.mapMapOfString = mapMapOfString
         self.mapOfEnumString = mapOfEnumString
         self.directMap = directMap
         self.indirectMap = indirectMap
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapMapOfString = "map_map_of_string"
         case mapOfEnumString = "map_of_enum_string"
         case directMap = "direct_map"
         case indirectMap = "indirect_map"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
index 7116108fd7a3879ef9a8337cdd7ff8d8295a825e..c3deb2f28932f5d0ab338f3da2ac398de24a8822 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
@@ -7,20 +7,16 @@
 
 import Foundation
 
-
-
 public struct MixedPropertiesAndAdditionalPropertiesClass: Codable {
 
     public var uuid: UUID?
     public var dateTime: Date?
-    public var map: [String:Animal]?
+    public var map: [String: Animal]?
 
-    public init(uuid: UUID?, dateTime: Date?, map: [String:Animal]?) {
+    public init(uuid: UUID?, dateTime: Date?, map: [String: Animal]?) {
         self.uuid = uuid
         self.dateTime = dateTime
         self.map = map
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
index fc1d0606b7ba1788451c5add909cf4afb64031c9..7ed6aad907be01122bb19752a3622dc002d026be 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name starting with number */
 
 public struct Model200Response: Codable {
@@ -20,11 +19,9 @@ public struct Model200Response: Codable {
         self._class = _class
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case _class = "class"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
index cc165d767d91a0ac79941c3a1af5208e192941c9..ce9ffe4fb38e525fea73a67c24199de77214cb64 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name same as property name */
 
 public struct Name: Codable {
@@ -24,13 +23,11 @@ public struct Name: Codable {
         self._123number = _123number
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case snakeCase = "snake_case"
         case property
         case _123number = "123Number"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
index e6fb206093aa29bfd8254cffb0026bf04436d925..abd2269e8e76cbfae26cdc3c7582d486a13cfb60 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct NumberOnly: Codable {
 
     public var justNumber: Double?
@@ -17,10 +15,8 @@ public struct NumberOnly: Codable {
         self.justNumber = justNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justNumber = "JustNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
index 83c3b85e6629e9454007ba09246811d282e7c875..a6e1b1d2e5e46e4d5d82399449b966f00b38a59b 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Order: Codable {
 
     public enum Status: String, Codable {
@@ -33,6 +31,4 @@ public struct Order: Codable {
         self.complete = complete
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
index edc4523d9f0090260720b507ff61ac29df79e4ad..49aec001c5dbaeadfc67a0cfa9d2ad79fa3c20fb 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct OuterComposite: Codable {
 
     public var myNumber: Double?
@@ -21,12 +19,10 @@ public struct OuterComposite: Codable {
         self.myBoolean = myBoolean
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case myNumber = "my_number"
         case myString = "my_string"
         case myBoolean = "my_boolean"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
index bd1643d279edd46285735e726922a03f14b4c3e7..9f80fc95ecf0b11f47c6ec2f1e0e5a9a3ef000b0 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum OuterEnum: String, Codable {
     case placed = "placed"
     case approved = "approved"
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
index 5e39abae6c8f55dbfaf300156453a199e86648a2..af60a550bb19ed846146784ae551c2406d31018f 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Pet: Codable {
 
     public enum Status: String, Codable {
@@ -33,6 +31,4 @@ public struct Pet: Codable {
         self.status = status
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
index 48b655a5b0aa2698abf0467fa038429ed3644075..0acd21fd10000317ffc9f96840a49b3dd538d0c7 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ReadOnlyFirst: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct ReadOnlyFirst: Codable {
         self.baz = baz
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
index de4b218999b7fda43e046a32e838f7c5807cd2d8..076082af842f1a3f7c6c1e19bffe9e3aecda4a31 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing reserved words */
 
 public struct Return: Codable {
@@ -18,10 +17,8 @@ public struct Return: Codable {
         self._return = _return
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _return = "return"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
index 213d896ba9882c8f8751f37efa757035910dab55..e79fc45c0e914a027b53334468238a95af0c36dd 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct SpecialModelName: Codable {
 
     public var specialPropertyName: Int64?
@@ -17,10 +15,8 @@ public struct SpecialModelName: Codable {
         self.specialPropertyName = specialPropertyName
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case specialPropertyName = "$special[property.name]"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
index ae15e87d94bba90e3d51a7c4275c06e65fbc4987..3f1237fee477a298b1d99cef8062371e2f101f59 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
@@ -7,12 +7,9 @@
 
 import Foundation
 
-
-
 public struct StringBooleanMap: Codable {
 
-
-    public var additionalProperties: [String:Bool] = [:]
+    public var additionalProperties: [String: Bool] = [:]
 
     public subscript(key: String) -> Bool? {
         get {
@@ -45,7 +42,4 @@ public struct StringBooleanMap: Codable {
         additionalProperties = try container.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
index 32ee33a1a1e0dc98c253db9c2c387b6f39d2eadc..4dd8a9a9f5a0fc547c88401b39caf0f00cddd61d 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Tag: Codable {
 
     public var id: Int64?
@@ -19,6 +17,4 @@ public struct Tag: Codable {
         self.name = name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
index be1afdf0266c38363e96cea1ef97eebe15365d81..bf0006e1a266cc3b1271bf775129caf67edb9639 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderDefault: Codable {
 
     public var stringItem: String = "what"
@@ -25,7 +23,7 @@ public struct TypeHolderDefault: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderDefault: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
index f46c8952e13e4eb39f0f7ea7d6bf5b00357c651f..602a2a6d185a321f96aec3e3b409bd85f7272776 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderExample: Codable {
 
     public var stringItem: String
@@ -25,7 +23,7 @@ public struct TypeHolderExample: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderExample: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/User.swift
index a61b5844201ea15d037424b32518b1c2d259ee4a..79f271ed73564b8af07f2698e649f38062255ce7 100644
--- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/User.swift
+++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models/User.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct User: Codable {
 
     public var id: Int64?
@@ -32,6 +30,4 @@ public struct User: Codable {
         self.userStatus = userStatus
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/README.md b/samples/client/petstore/swift4/default/README.md
index 1e7f0a59ea01c4fc07d3b267963d7e87c9191142..0711eb870547e8af6fe7f4c1aa32785f0e89c278 100644
--- a/samples/client/petstore/swift4/default/README.md
+++ b/samples/client/petstore/swift4/default/README.md
@@ -73,10 +73,12 @@ Class | Method | HTTP request | Description
  - [ArrayTest](docs/ArrayTest.md)
  - [Capitalization](docs/Capitalization.md)
  - [Cat](docs/Cat.md)
+ - [CatAllOf](docs/CatAllOf.md)
  - [Category](docs/Category.md)
  - [ClassModel](docs/ClassModel.md)
  - [Client](docs/Client.md)
  - [Dog](docs/Dog.md)
+ - [DogAllOf](docs/DogAllOf.md)
  - [EnumArrays](docs/EnumArrays.md)
  - [EnumClass](docs/EnumClass.md)
  - [EnumTest](docs/EnumTest.md)
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift
index 2fcc05ca0659ce732939876f6aec46e9ee36916e..a411b7749107c95215f1c2058ba4b15492fd1a08 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift
@@ -135,8 +135,7 @@ public func request(
     parameters: Parameters? = nil,
     encoding: ParameterEncoding = URLEncoding.default,
     headers: HTTPHeaders? = nil)
-    -> DataRequest
-{
+    -> DataRequest {
     return SessionManager.default.request(
         url,
         method: method,
@@ -183,8 +182,7 @@ public func download(
     encoding: ParameterEncoding = URLEncoding.default,
     headers: HTTPHeaders? = nil,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(
         url,
         method: method,
@@ -209,8 +207,7 @@ public func download(
 public func download(
     _ urlRequest: URLRequestConvertible,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(urlRequest, to: destination)
 }
 
@@ -239,8 +236,7 @@ public func download(
 public func download(
     resumingWith resumeData: Data,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(resumingWith: resumeData, to: destination)
 }
 
@@ -263,8 +259,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(fileURL, to: url, method: method, headers: headers)
 }
 
@@ -297,8 +292,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(data, to: url, method: method, headers: headers)
 }
 
@@ -331,8 +325,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(stream, to: url, method: method, headers: headers)
 }
 
@@ -379,8 +372,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil,
-    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?)
-{
+    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) {
     return SessionManager.default.upload(
         multipartFormData: multipartFormData,
         usingThreshold: encodingMemoryThreshold,
@@ -416,8 +408,7 @@ public func upload(
     multipartFormData: @escaping (MultipartFormData) -> Void,
     usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold,
     with urlRequest: URLRequestConvertible,
-    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?)
-{
+    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) {
     return SessionManager.default.upload(
         multipartFormData: multipartFormData,
         usingThreshold: encodingMemoryThreshold,
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift
index 057e68b97727c01241e4857c64b1866eae932000..85a0685748e344c1beca21d59480facfeab8820d 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift
@@ -275,8 +275,7 @@ open class MultipartFormData {
             }
 
             bodyContentLength = fileSize.uint64Value
-        }
-        catch {
+        } catch {
             setBodyPartError(withReason: .bodyPartFileSizeQueryFailedWithError(forURL: fileURL, error: error))
             return
         }
@@ -312,8 +311,7 @@ open class MultipartFormData {
         withLength length: UInt64,
         name: String,
         fileName: String,
-        mimeType: String)
-    {
+        mimeType: String) {
         let headers = contentHeaders(withName: name, fileName: fileName, mimeType: mimeType)
         append(stream, withLength: length, headers: headers)
     }
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift
index 3ff2e7fc2774ab233b144cd412be52fa483a2b8c..60bda83d2ff9dc2e0a5f11b9f316164fd1313af3 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift
@@ -146,8 +146,7 @@ open class NetworkReachabilityManager {
         context.info = Unmanaged.passUnretained(self).toOpaque()
 
         let callbackEnabled = SCNetworkReachabilitySetCallback(
-            reachability,
-            { (_, flags, info) in
+            reachability, { (_, flags, info) in
                 let reachability = Unmanaged<NetworkReachabilityManager>.fromOpaque(info!).takeUnretainedValue()
                 reachability.notifyListener(flags)
             },
@@ -216,8 +215,7 @@ extension NetworkReachabilityManager.NetworkReachabilityStatus: Equatable {}
 public func ==(
     lhs: NetworkReachabilityManager.NetworkReachabilityStatus,
     rhs: NetworkReachabilityManager.NetworkReachabilityStatus)
-    -> Bool
-{
+    -> Bool {
     switch (lhs, rhs) {
     case (.unknown, .unknown):
         return true
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift
index 4a54f2dd00b18865475c0afa0aab0d0a8dbea043..344a048cad8b376b9e14de8176630d56523ac8d0 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift
@@ -435,8 +435,7 @@ public struct PropertyListEncoding: ParameterEncoding {
     /// - returns: The new `PropertyListEncoding` instance.
     public init(
         format: PropertyListSerialization.PropertyListFormat = .xml,
-        options: PropertyListSerialization.WriteOptions = 0)
-    {
+        options: PropertyListSerialization.WriteOptions = 0) {
         self.format = format
         self.options = options
     }
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Request.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Request.swift
index ea43411377c0a506befbea6fdee7d18c0f15abc8..18b83a0e73252da6898d7f7fb8031995a80759d3 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Request.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Request.swift
@@ -161,8 +161,7 @@ open class Request {
         user: String,
         password: String,
         persistence: URLCredential.Persistence = .forSession)
-        -> Self
-    {
+        -> Self {
         let credential = URLCredential(user: user, password: password, persistence: persistence)
         return authenticate(usingCredential: credential)
     }
@@ -538,8 +537,7 @@ open class DownloadRequest: Request {
     open class func suggestedDownloadDestination(
         for directory: FileManager.SearchPathDirectory = .documentDirectory,
         in domain: FileManager.SearchPathDomainMask = .userDomainMask)
-        -> DownloadFileDestination
-    {
+        -> DownloadFileDestination {
         return { temporaryURL, response in
             let directoryURLs = FileManager.default.urls(for: directory, in: domain)
 
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Response.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Response.swift
index 74b1ef54d03650e44ab64cff8eec9f399a170044..23571383bae882f6aa40766ae674ed5ebb100db0 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Response.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Response.swift
@@ -58,8 +58,7 @@ public struct DefaultDataResponse {
         data: Data?,
         error: Error?,
         timeline: Timeline = Timeline(),
-        metrics: AnyObject? = nil)
-    {
+        metrics: AnyObject? = nil) {
         self.request = request
         self.response = response
         self.data = data
@@ -109,8 +108,7 @@ public struct DataResponse<Value> {
         response: HTTPURLResponse?,
         data: Data?,
         result: Result<Value>,
-        timeline: Timeline = Timeline())
-    {
+        timeline: Timeline = Timeline()) {
         self.request = request
         self.response = response
         self.data = data
@@ -296,8 +294,7 @@ public struct DefaultDownloadResponse {
         resumeData: Data?,
         error: Error?,
         timeline: Timeline = Timeline(),
-        metrics: AnyObject? = nil)
-    {
+        metrics: AnyObject? = nil) {
         self.request = request
         self.response = response
         self.temporaryURL = temporaryURL
@@ -359,8 +356,7 @@ public struct DownloadResponse<Value> {
         destinationURL: URL?,
         resumeData: Data?,
         result: Result<Value>,
-        timeline: Timeline = Timeline())
-    {
+        timeline: Timeline = Timeline()) {
         self.request = request
         self.response = response
         self.temporaryURL = temporaryURL
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift
index 3333726d5c72c8e9f4582ce2e3df04c7f06a8736..fd049edac1c98978c3e15b462f445eb82975a5b5 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift
@@ -144,8 +144,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         responseSerializer: T,
         completionHandler: @escaping (DataResponse<T.SerializedObject>) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             let result = responseSerializer.serializeResponse(
                 self.request,
@@ -182,8 +181,7 @@ extension DownloadRequest {
     public func response(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DefaultDownloadResponse) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             (queue ?? DispatchQueue.main).async {
                 var downloadResponse = DefaultDownloadResponse(
@@ -218,8 +216,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         responseSerializer: T,
         completionHandler: @escaping (DownloadResponse<T.SerializedObject>) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             let result = responseSerializer.serializeResponse(
                 self.request,
@@ -289,8 +286,7 @@ extension DataRequest {
     public func responseData(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DataResponse<Data>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.dataResponseSerializer(),
@@ -329,8 +325,7 @@ extension DownloadRequest {
     public func responseData(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DownloadResponse<Data>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.dataResponseSerializer(),
@@ -356,8 +351,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<String>
-    {
+        -> Result<String> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success("") }
@@ -411,8 +405,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         encoding: String.Encoding? = nil,
         completionHandler: @escaping (DataResponse<String>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.stringResponseSerializer(encoding: encoding),
@@ -459,8 +452,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         encoding: String.Encoding? = nil,
         completionHandler: @escaping (DownloadResponse<String>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.stringResponseSerializer(encoding: encoding),
@@ -486,8 +478,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<Any>
-    {
+        -> Result<Any> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) }
@@ -514,8 +505,7 @@ extension DataRequest {
     /// - returns: A JSON object response serializer.
     public static func jsonResponseSerializer(
         options: JSONSerialization.ReadingOptions = .allowFragments)
-        -> DataResponseSerializer<Any>
-    {
+        -> DataResponseSerializer<Any> {
         return DataResponseSerializer { _, response, data, error in
             return Request.serializeResponseJSON(options: options, response: response, data: data, error: error)
         }
@@ -532,8 +522,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         options: JSONSerialization.ReadingOptions = .allowFragments,
         completionHandler: @escaping (DataResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.jsonResponseSerializer(options: options),
@@ -551,8 +540,7 @@ extension DownloadRequest {
     /// - returns: A JSON object response serializer.
     public static func jsonResponseSerializer(
         options: JSONSerialization.ReadingOptions = .allowFragments)
-        -> DownloadResponseSerializer<Any>
-    {
+        -> DownloadResponseSerializer<Any> {
         return DownloadResponseSerializer { _, response, fileURL, error in
             guard error == nil else { return .failure(error!) }
 
@@ -580,8 +568,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         options: JSONSerialization.ReadingOptions = .allowFragments,
         completionHandler: @escaping (DownloadResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.jsonResponseSerializer(options: options),
@@ -607,8 +594,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<Any>
-    {
+        -> Result<Any> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) }
@@ -635,8 +621,7 @@ extension DataRequest {
     /// - returns: A property list object response serializer.
     public static func propertyListResponseSerializer(
         options: PropertyListSerialization.ReadOptions = [])
-        -> DataResponseSerializer<Any>
-    {
+        -> DataResponseSerializer<Any> {
         return DataResponseSerializer { _, response, data, error in
             return Request.serializeResponsePropertyList(options: options, response: response, data: data, error: error)
         }
@@ -653,8 +638,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         options: PropertyListSerialization.ReadOptions = [],
         completionHandler: @escaping (DataResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.propertyListResponseSerializer(options: options),
@@ -672,8 +656,7 @@ extension DownloadRequest {
     /// - returns: A property list object response serializer.
     public static func propertyListResponseSerializer(
         options: PropertyListSerialization.ReadOptions = [])
-        -> DownloadResponseSerializer<Any>
-    {
+        -> DownloadResponseSerializer<Any> {
         return DownloadResponseSerializer { _, response, fileURL, error in
             guard error == nil else { return .failure(error!) }
 
@@ -701,8 +684,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         options: PropertyListSerialization.ReadOptions = [],
         completionHandler: @escaping (DownloadResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.propertyListResponseSerializer(options: options),
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift
index 7f44c8d2c6aa425819fa8e6cb388051fcf84cd65..d50e941fabdf6d02e02168cb2ff2fe85f3799aab 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift
@@ -249,7 +249,6 @@ public enum ServerTrustPolicy {
             let unspecified = SecTrustResultType.unspecified
             let proceed = SecTrustResultType.proceed
 
-
             isValid = result == unspecified || result == proceed
         }
 
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift
index 03bcb7ced6c8349f54e8ef3a557b2052fa182708..17d0d9f1506a6523301f7d948cb2b0ee60e4a8f2 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift
@@ -255,8 +255,7 @@ extension SessionDelegate: URLSessionDelegate {
     open func urlSession(
         _ session: URLSession,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         guard sessionDidReceiveChallengeWithCompletion == nil else {
             sessionDidReceiveChallengeWithCompletion?(session, challenge, completionHandler)
             return
@@ -315,8 +314,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         task: URLSessionTask,
         willPerformHTTPRedirection response: HTTPURLResponse,
         newRequest request: URLRequest,
-        completionHandler: @escaping (URLRequest?) -> Void)
-    {
+        completionHandler: @escaping (URLRequest?) -> Void) {
         guard taskWillPerformHTTPRedirectionWithCompletion == nil else {
             taskWillPerformHTTPRedirectionWithCompletion?(session, task, response, request, completionHandler)
             return
@@ -342,8 +340,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         _ session: URLSession,
         task: URLSessionTask,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         guard taskDidReceiveChallengeWithCompletion == nil else {
             taskDidReceiveChallengeWithCompletion?(session, task, challenge, completionHandler)
             return
@@ -372,8 +369,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
     open func urlSession(
         _ session: URLSession,
         task: URLSessionTask,
-        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void)
-    {
+        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) {
         guard taskNeedNewBodyStreamWithCompletion == nil else {
             taskNeedNewBodyStreamWithCompletion?(session, task, completionHandler)
             return
@@ -398,8 +394,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         task: URLSessionTask,
         didSendBodyData bytesSent: Int64,
         totalBytesSent: Int64,
-        totalBytesExpectedToSend: Int64)
-    {
+        totalBytesExpectedToSend: Int64) {
         if let taskDidSendBodyData = taskDidSendBodyData {
             taskDidSendBodyData(session, task, bytesSent, totalBytesSent, totalBytesExpectedToSend)
         } else if let delegate = self[task]?.delegate as? UploadTaskDelegate {
@@ -512,8 +507,7 @@ extension SessionDelegate: URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         didReceive response: URLResponse,
-        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void)
-    {
+        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
         guard dataTaskDidReceiveResponseWithCompletion == nil else {
             dataTaskDidReceiveResponseWithCompletion?(session, dataTask, response, completionHandler)
             return
@@ -536,8 +530,7 @@ extension SessionDelegate: URLSessionDataDelegate {
     open func urlSession(
         _ session: URLSession,
         dataTask: URLSessionDataTask,
-        didBecome downloadTask: URLSessionDownloadTask)
-    {
+        didBecome downloadTask: URLSessionDownloadTask) {
         if let dataTaskDidBecomeDownloadTask = dataTaskDidBecomeDownloadTask {
             dataTaskDidBecomeDownloadTask(session, dataTask, downloadTask)
         } else {
@@ -573,8 +566,7 @@ extension SessionDelegate: URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         willCacheResponse proposedResponse: CachedURLResponse,
-        completionHandler: @escaping (CachedURLResponse?) -> Void)
-    {
+        completionHandler: @escaping (CachedURLResponse?) -> Void) {
         guard dataTaskWillCacheResponseWithCompletion == nil else {
             dataTaskWillCacheResponseWithCompletion?(session, dataTask, proposedResponse, completionHandler)
             return
@@ -608,8 +600,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
     open func urlSession(
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
-        didFinishDownloadingTo location: URL)
-    {
+        didFinishDownloadingTo location: URL) {
         if let downloadTaskDidFinishDownloadingToURL = downloadTaskDidFinishDownloadingToURL {
             downloadTaskDidFinishDownloadingToURL(session, downloadTask, location)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -632,8 +623,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
         downloadTask: URLSessionDownloadTask,
         didWriteData bytesWritten: Int64,
         totalBytesWritten: Int64,
-        totalBytesExpectedToWrite: Int64)
-    {
+        totalBytesExpectedToWrite: Int64) {
         if let downloadTaskDidWriteData = downloadTaskDidWriteData {
             downloadTaskDidWriteData(session, downloadTask, bytesWritten, totalBytesWritten, totalBytesExpectedToWrite)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -661,8 +651,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
         didResumeAtOffset fileOffset: Int64,
-        expectedTotalBytes: Int64)
-    {
+        expectedTotalBytes: Int64) {
         if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset {
             downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -716,8 +705,7 @@ extension SessionDelegate: URLSessionStreamDelegate {
         _ session: URLSession,
         streamTask: URLSessionStreamTask,
         didBecome inputStream: InputStream,
-        outputStream: OutputStream)
-    {
+        outputStream: OutputStream) {
         streamTaskDidBecomeInputAndOutputStreams?(session, streamTask, inputStream, outputStream)
     }
 }
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift
index 8779efdaa6754e308a65b51a72e1510b7bfb7dc8..8c10706677257501589af7f89b25b7d4dab12189 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift
@@ -166,8 +166,7 @@ open class SessionManager {
     public init(
         configuration: URLSessionConfiguration = URLSessionConfiguration.default,
         delegate: SessionDelegate = SessionDelegate(),
-        serverTrustPolicyManager: ServerTrustPolicyManager? = nil)
-    {
+        serverTrustPolicyManager: ServerTrustPolicyManager? = nil) {
         self.delegate = delegate
         self.session = URLSession(configuration: configuration, delegate: delegate, delegateQueue: nil)
 
@@ -185,8 +184,7 @@ open class SessionManager {
     public init?(
         session: URLSession,
         delegate: SessionDelegate,
-        serverTrustPolicyManager: ServerTrustPolicyManager? = nil)
-    {
+        serverTrustPolicyManager: ServerTrustPolicyManager? = nil) {
         guard delegate === session.delegate else { return nil }
 
         self.delegate = delegate
@@ -229,8 +227,7 @@ open class SessionManager {
         parameters: Parameters? = nil,
         encoding: ParameterEncoding = URLEncoding.default,
         headers: HTTPHeaders? = nil)
-        -> DataRequest
-    {
+        -> DataRequest {
         var originalRequest: URLRequest?
 
         do {
@@ -320,8 +317,7 @@ open class SessionManager {
         encoding: ParameterEncoding = URLEncoding.default,
         headers: HTTPHeaders? = nil,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             let encodedURLRequest = try encoding.encode(urlRequest, with: parameters)
@@ -347,8 +343,7 @@ open class SessionManager {
     open func download(
         _ urlRequest: URLRequestConvertible,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let urlRequest = try urlRequest.asURLRequest()
             return download(.request(urlRequest), to: destination)
@@ -384,8 +379,7 @@ open class SessionManager {
     open func download(
         resumingWith resumeData: Data,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         return download(.resumeData(resumeData), to: destination)
     }
 
@@ -394,8 +388,7 @@ open class SessionManager {
     private func download(
         _ downloadable: DownloadRequest.Downloadable,
         to destination: DownloadRequest.DownloadFileDestination?)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let task = try downloadable.task(session: session, adapter: adapter, queue: queue)
             let download = DownloadRequest(session: session, requestTask: .download(downloadable, task))
@@ -416,8 +409,7 @@ open class SessionManager {
         _ downloadable: DownloadRequest.Downloadable?,
         to destination: DownloadRequest.DownloadFileDestination?,
         failedWith error: Error)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         var downloadTask: Request.RequestTask = .download(nil, nil)
 
         if let downloadable = downloadable {
@@ -458,8 +450,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(fileURL, with: urlRequest)
@@ -504,8 +495,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(data, with: urlRequest)
@@ -550,8 +540,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(stream, with: urlRequest)
@@ -611,8 +600,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil,
-        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?)
-    {
+        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
 
@@ -654,8 +642,7 @@ open class SessionManager {
         multipartFormData: @escaping (MultipartFormData) -> Void,
         usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold,
         with urlRequest: URLRequestConvertible,
-        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?)
-    {
+        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) {
         DispatchQueue.global(qos: .utility).async {
             let formData = MultipartFormData()
             multipartFormData(formData)
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift
index 8e19888fc8d248cebdb8a8b5e0762d2dd1a238fa..12fcbe92d331a893ba21ac2de6470733e6dd5374 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift
@@ -94,8 +94,7 @@ open class TaskDelegate: NSObject {
         task: URLSessionTask,
         willPerformHTTPRedirection response: HTTPURLResponse,
         newRequest request: URLRequest,
-        completionHandler: @escaping (URLRequest?) -> Void)
-    {
+        completionHandler: @escaping (URLRequest?) -> Void) {
         var redirectRequest: URLRequest? = request
 
         if let taskWillPerformHTTPRedirection = taskWillPerformHTTPRedirection {
@@ -110,8 +109,7 @@ open class TaskDelegate: NSObject {
         _ session: URLSession,
         task: URLSessionTask,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         var disposition: URLSession.AuthChallengeDisposition = .performDefaultHandling
         var credential: URLCredential?
 
@@ -150,8 +148,7 @@ open class TaskDelegate: NSObject {
     func urlSession(
         _ session: URLSession,
         task: URLSessionTask,
-        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void)
-    {
+        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) {
         var bodyStream: InputStream?
 
         if let taskNeedNewBodyStream = taskNeedNewBodyStream {
@@ -237,8 +234,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         didReceive response: URLResponse,
-        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void)
-    {
+        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
         var disposition: URLSession.ResponseDisposition = .allow
 
         expectedContentLength = response.expectedContentLength
@@ -253,8 +249,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
     func urlSession(
         _ session: URLSession,
         dataTask: URLSessionDataTask,
-        didBecome downloadTask: URLSessionDownloadTask)
-    {
+        didBecome downloadTask: URLSessionDownloadTask) {
         dataTaskDidBecomeDownloadTask?(session, dataTask, downloadTask)
     }
 
@@ -287,8 +282,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         willCacheResponse proposedResponse: CachedURLResponse,
-        completionHandler: @escaping (CachedURLResponse?) -> Void)
-    {
+        completionHandler: @escaping (CachedURLResponse?) -> Void) {
         var cachedResponse: CachedURLResponse? = proposedResponse
 
         if let dataTaskWillCacheResponse = dataTaskWillCacheResponse {
@@ -343,8 +337,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
     func urlSession(
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
-        didFinishDownloadingTo location: URL)
-    {
+        didFinishDownloadingTo location: URL) {
         temporaryURL = location
 
         guard
@@ -379,8 +372,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
         downloadTask: URLSessionDownloadTask,
         didWriteData bytesWritten: Int64,
         totalBytesWritten: Int64,
-        totalBytesExpectedToWrite: Int64)
-    {
+        totalBytesExpectedToWrite: Int64) {
         if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() }
 
         if let downloadTaskDidWriteData = downloadTaskDidWriteData {
@@ -405,8 +397,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
         didResumeAtOffset fileOffset: Int64,
-        expectedTotalBytes: Int64)
-    {
+        expectedTotalBytes: Int64) {
         if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset {
             downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes)
         } else {
@@ -448,8 +439,7 @@ class UploadTaskDelegate: DataTaskDelegate {
         task: URLSessionTask,
         didSendBodyData bytesSent: Int64,
         totalBytesSent: Int64,
-        totalBytesExpectedToSend: Int64)
-    {
+        totalBytesExpectedToSend: Int64) {
         if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() }
 
         if let taskDidSendBodyData = taskDidSendBodyData {
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift
index 181c9883cb2b8a6b4fd3bd198dc22f500b92da56..b318b1ff484a370f184ef92a9e68bedd850c20a9 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift
@@ -64,8 +64,7 @@ public struct Timeline {
         requestStartTime: CFAbsoluteTime = 0.0,
         initialResponseTime: CFAbsoluteTime = 0.0,
         requestCompletedTime: CFAbsoluteTime = 0.0,
-        serializationCompletedTime: CFAbsoluteTime = 0.0)
-    {
+        serializationCompletedTime: CFAbsoluteTime = 0.0) {
         self.requestStartTime = requestStartTime
         self.initialResponseTime = initialResponseTime
         self.requestCompletedTime = requestCompletedTime
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift
index ec2c5c35a066e58e4e2b8793ea197daa6a735611..deaee34ad870b304d94e6213a04530db629499f7 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift
@@ -94,8 +94,7 @@ extension Request {
         statusCode acceptableStatusCodes: S,
         response: HTTPURLResponse)
         -> ValidationResult
-        where S.Iterator.Element == Int
-    {
+        where S.Iterator.Element == Int {
         if acceptableStatusCodes.contains(response.statusCode) {
             return .success
         } else {
@@ -111,8 +110,7 @@ extension Request {
         response: HTTPURLResponse,
         data: Data?)
         -> ValidationResult
-        where S.Iterator.Element == String
-    {
+        where S.Iterator.Element == String {
         guard let data = data, data.count > 0 else { return .success }
 
         guard
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient/AppDelegate.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient/AppDelegate.swift
index bb73371c387cb103829d024f689a43cca75df08b..b1896774c73882ac824f8fe755b6ca6e83f1f251 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient/AppDelegate.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient/AppDelegate.swift
@@ -13,7 +13,6 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
 
     var window: UIWindow?
 
-
     func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
         // Override point for customization after application launch.
         return true
@@ -41,6 +40,4 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
         // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient/ViewController.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient/ViewController.swift
index cd7e9a167615554c4164ae88da8b86c6f827af83..8dad16b10f16dc8456195df8832f5a2ab64b5bbd 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient/ViewController.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient/ViewController.swift
@@ -20,6 +20,4 @@ class ViewController: UIViewController {
         // Dispose of any resources that can be recreated.
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/DateFormatTests.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/DateFormatTests.swift
index 978417c35867022512264e084dade58fe3119e3f..b83a008b7921f7f4b44d24cd071bfac902b5c05e 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/DateFormatTests.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/DateFormatTests.swift
@@ -12,21 +12,21 @@ import XCTest
 @testable import SwaggerClient
 
 class DateFormatTests: XCTestCase {
-	
+
 	struct DateTest: Codable {
 		let date: Date
 	}
-	
+
 	override func setUp() {
 		super.setUp()
 		// Put setup code here. This method is called before the invocation of each test method in the class.
 	}
-	
+
 	override func tearDown() {
 		// Put teardown code here. This method is called after the invocation of each test method in the class.
 		super.tearDown()
 	}
-	
+
 	func testEncodeToJSONAlwaysResultsInUTCEncodedDate() {
 		var dateComponents = DateComponents()
 		dateComponents.calendar = Calendar(identifier: .gregorian)
@@ -37,40 +37,40 @@ class DateFormatTests: XCTestCase {
 		dateComponents.minute = 35
 		dateComponents.second = 43
 		dateComponents.nanosecond = 500
-		
+
 		// Testing a date with a timezone of +00:00 (UTC)
 		dateComponents.timeZone = TimeZone(secondsFromGMT: 0)
 		XCTAssert(dateComponents.isValidDate)
-		
+
 		guard let utcDate = dateComponents.date else {
 			XCTFail("Couldn't get a valid date")
 			return
 		}
-		
+
 		var encodedDate = utcDate.encodeToJSON() as! String
 		XCTAssert(encodedDate.hasSuffix("Z"))
-		
+
 		// test with a positive timzone offset from UTC
 		dateComponents.timeZone = TimeZone(secondsFromGMT: 60 * 60) // +01:00
 		XCTAssert(dateComponents.isValidDate)
-		
+
 		guard let nonUTCDate1 = dateComponents.date else {
 			XCTFail("Couldn't get a valid date")
 			return
 		}
-		
+
 		encodedDate = nonUTCDate1.encodeToJSON() as! String
 		XCTAssert(encodedDate.hasSuffix("Z"))
-		
+
 		// test with a negative timzone offset from UTC
 		dateComponents.timeZone = TimeZone(secondsFromGMT: -(60 * 60)) // -01:00
 		XCTAssert(dateComponents.isValidDate)
-		
+
 		guard let nonUTCDate2 = dateComponents.date else {
 			XCTFail("Couldn't get a valid date")
 			return
 		}
-		
+
 		encodedDate = nonUTCDate2.encodeToJSON() as! String
 		XCTAssert(encodedDate.hasSuffix("Z"))
 	}
@@ -79,7 +79,7 @@ class DateFormatTests: XCTestCase {
 		let jsonData = "{\"date\":\"1970-01-01T00:00:00.000Z\"}".data(using: .utf8)!
 		let decodeResult = CodableHelper.decode(DateTest.self, from: jsonData)
 		XCTAssert(decodeResult.decodableObj != nil && decodeResult.error == nil)
-		
+
 		var dateComponents = DateComponents()
 		dateComponents.calendar = Calendar(identifier: .gregorian)
 		dateComponents.year = 1970
@@ -88,16 +88,16 @@ class DateFormatTests: XCTestCase {
 		dateComponents.hour = 00
 		dateComponents.minute = 00
 		dateComponents.second = 00
-		
+
 		// Testing a date with a timezone of +00:00 (UTC)
 		dateComponents.timeZone = TimeZone(secondsFromGMT: 0)
 		XCTAssert(dateComponents.isValidDate)
-		
+
 		guard let date = dateComponents.date else {
 			XCTFail("Couldn't get a valid date")
 			return
 		}
-		
+
 		let dateTest = DateTest(date: date)
 		let encodeResult = CodableHelper.encode(dateTest)
 		XCTAssert(encodeResult.data != nil && encodeResult.error == nil)
@@ -105,9 +105,9 @@ class DateFormatTests: XCTestCase {
 			XCTFail("Unable to convert encoded data to string.")
 			return
 		}
-		
+
 		let exampleJSONString = "{\"date\":\"1970-01-01T00:00:00.000Z\"}"
 		XCTAssert(jsonString == exampleJSONString, "Encoded JSON String: \(jsonString) should match: \(exampleJSONString)")
 	}
-	
+
 }
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift
index b2f9fecb4079936584f3d575f188e162df992d5a..6be5bc6d29fe20c9020a93f4f69e6abe2b39f61a 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift
@@ -11,61 +11,61 @@ import XCTest
 @testable import SwaggerClient
 
 class PetAPITests: XCTestCase {
-    
+
     let testTimeout = 10.0
 
     override func setUp() {
         super.setUp()
         // Put setup code here. This method is called before the invocation of each test method in the class.
     }
-    
+
     override func tearDown() {
         // Put teardown code here. This method is called after the invocation of each test method in the class.
         super.tearDown()
     }
-    
+
     func test1CreatePet() {
         let expectation = self.expectation(description: "testCreatePet")
         let category = PetstoreClient.Category(id: 1234, name: "eyeColor")
         let tags = [Tag(id: 1234, name: "New York"), Tag(id: 124321, name: "Jose")]
         let newPet = Pet(id: 1000, category: category, name: "Fluffy", photoUrls: ["https://petstore.com/sample/photo1.jpg", "https://petstore.com/sample/photo2.jpg"], tags: tags, status: .available)
 
-        PetAPI.addPet(body: newPet) { (response, error) in
+        PetAPI.addPet(body: newPet) { (_, error) in
             guard error == nil else {
                 XCTFail("error creating pet")
                 return
             }
-            
+
             expectation.fulfill()
         }
-        
+
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func test2GetPet() {
         let expectation = self.expectation(description: "testGetPet")
-        
+
         PetAPI.getPetById(petId: 1000) { (pet, error) in
             guard error == nil else {
                 XCTFail("error retrieving pet")
                 return
             }
-            
+
             if let pet = pet {
                 XCTAssert(pet.id == 1000, "invalid id")
                 XCTAssert(pet.name == "Fluffy", "invalid name")
-                
+
                 expectation.fulfill()
             }
         }
-        
+
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func test3DeletePet() {
         let expectation = self.expectation(description: "testDeletePet")
-        
-        PetAPI.deletePet(petId: 1000) { (response, error) in
+
+        PetAPI.deletePet(petId: 1000) { (_, error) in
             guard error == nil else {
                 XCTFail("error deleting pet")
                 return
@@ -73,7 +73,7 @@ class PetAPITests: XCTestCase {
 
             expectation.fulfill()
         }
-        
+
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
 
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift
index 5bd01081e4df9a33b0b33ac55912b9a10394e2cb..fedf7fcdbbd2b5e77e9e4699378864123fcffff5 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift
@@ -13,7 +13,7 @@ import XCTest
 class StoreAPITests: XCTestCase {
 
     let isoDateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
-    
+
     let testTimeout = 10.0
 
     func test1PlaceOrder() {
@@ -27,45 +27,45 @@ class StoreAPITests: XCTestCase {
                 XCTFail("error placing order: \(error.debugDescription)")
                 return
             }
-            
+
             if let order = order {
                 XCTAssert(order.id == 1000, "invalid id")
                 XCTAssert(order.quantity == 10, "invalid quantity")
                 XCTAssert(order.status == .placed, "invalid status")
                 XCTAssert(order.shipDate!.isEqual(shipDate, format: self.isoDateFormat),
                           "Date should be idempotent")
-                
+
                 expectation.fulfill()
             }
         }
-        
+
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func test2GetOrder() {
         let expectation = self.expectation(description: "testGetOrder")
-        
+
         StoreAPI.getOrderById(orderId: 1000) { (order, error) in
             guard error == nil else {
                 XCTFail("error retrieving order: \(error.debugDescription)")
                 return
             }
-            
+
             if let order = order {
                 XCTAssert(order.id == 1000, "invalid id")
                 XCTAssert(order.quantity == 10, "invalid quantity")
                 XCTAssert(order.status == .placed, "invalid status")
-                
+
                 expectation.fulfill()
             }
         }
-        
+
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func test3DeleteOrder() {
         let expectation = self.expectation(description: "testDeleteOrder")
-        
+
         StoreAPI.deleteOrder(orderId: "1000") { (response, error) in
             guard error == nil else {
                 XCTFail("error deleting order")
@@ -79,7 +79,7 @@ class StoreAPITests: XCTestCase {
 
             expectation.fulfill()
         }
-        
+
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
 
@@ -92,7 +92,7 @@ class StoreAPITests: XCTestCase {
             progressExpectation.fulfill()
         }
 
-        requestBuilder.execute { (response, error) in
+        requestBuilder.execute { (_, _) in
             responseExpectation.fulfill()
         }
 
diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift
index 686bebec0ae8f643de890f93df73447d1f90d5e4..0a1ca3902eb6a011a6b8cc95243c7d769175266d 100644
--- a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift
+++ b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift
@@ -11,22 +11,22 @@ import XCTest
 @testable import SwaggerClient
 
 class UserAPITests: XCTestCase {
-    
+
     let testTimeout = 10.0
-    
+
     override func setUp() {
         super.setUp()
         // Put setup code here. This method is called before the invocation of each test method in the class.
     }
-    
+
     override func tearDown() {
         // Put teardown code here. This method is called after the invocation of each test method in the class.
         super.tearDown()
     }
-    
+
     func testLogin() {
         let expectation = self.expectation(description: "testLogin")
-        
+
         UserAPI.loginUser(username: "swiftTester", password: "swift") { (_, error) in
             guard error == nil else {
                 XCTFail("error logging in")
@@ -35,14 +35,14 @@ class UserAPITests: XCTestCase {
 
             expectation.fulfill()
         }
-        
+
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func testLogout() {
         let expectation = self.expectation(description: "testLogout")
-        
-        UserAPI.logoutUser { (response, error) in
+
+        UserAPI.logoutUser { (_, error) in
             guard error == nil else {
                 XCTFail("error logging out")
                 return
@@ -50,7 +50,7 @@ class UserAPITests: XCTestCase {
 
             expectation.fulfill()
         }
-        
+
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
 
@@ -60,7 +60,7 @@ class UserAPITests: XCTestCase {
         // into the path. So we intentionally introduce a path with spaces.
         let userRequestBuilder = UserAPI.getUserByNameWithRequestBuilder(username: "User Name With Spaces")
         let urlContainsSpace = userRequestBuilder.URLString.contains(" ")
-        
+
         XCTAssert(!urlContainsSpace, "Expected URL to be escaped, but it was not.")
     }
 
diff --git a/samples/client/petstore/swift4/default/docs/CatAllOf.md b/samples/client/petstore/swift4/default/docs/CatAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..79789be61c01631cd56d3925bd31a17533bcbf88
--- /dev/null
+++ b/samples/client/petstore/swift4/default/docs/CatAllOf.md
@@ -0,0 +1,10 @@
+# CatAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**declawed** | **Bool** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/default/docs/DogAllOf.md b/samples/client/petstore/swift4/default/docs/DogAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..9302ef52e938a092420c1a71707d79ca92464fb2
--- /dev/null
+++ b/samples/client/petstore/swift4/default/docs/DogAllOf.md
@@ -0,0 +1,10 @@
+# DogAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**breed** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/default/docs/UserAPI.md b/samples/client/petstore/swift4/default/docs/UserAPI.md
index da20013482e0f6d17dc962357b115180f084bf4c..380813bc68c02383e46b016c9e768915da8a4559 100644
--- a/samples/client/petstore/swift4/default/docs/UserAPI.md
+++ b/samples/client/petstore/swift4/default/docs/UserAPI.md
@@ -95,7 +95,7 @@ UserAPI.createUsersWithArrayInput(body: body) { (response, error) in
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
@@ -143,7 +143,7 @@ UserAPI.createUsersWithListInput(body: body) { (response, error) in
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
diff --git a/samples/client/petstore/swift4/default/project.yml b/samples/client/petstore/swift4/default/project.yml
new file mode 100644
index 0000000000000000000000000000000000000000..148b42517be93c052b823c18242dc38b19fd687b
--- /dev/null
+++ b/samples/client/petstore/swift4/default/project.yml
@@ -0,0 +1,15 @@
+name: PetstoreClient
+targets:
+  PetstoreClient:
+    type: framework
+    platform: iOS
+    deploymentTarget: "10.0"
+    sources: [PetstoreClient]
+    info:
+      path: ./Info.plist
+      version: 1.0.0
+    settings:
+      APPLICATION_EXTENSION_API_ONLY: true
+    scheme: {}
+    dependencies:
+    - carthage: Alamofire
diff --git a/samples/client/petstore/swift4/objcCompatible/.openapi-generator/VERSION b/samples/client/petstore/swift4/objcCompatible/.openapi-generator/VERSION
index afa6365606414bf56f925745712166af5b4a2be0..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/swift4/objcCompatible/.openapi-generator/VERSION
+++ b/samples/client/petstore/swift4/objcCompatible/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.0-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/swift4/objcCompatible/Info.plist b/samples/client/petstore/swift4/objcCompatible/Info.plist
new file mode 100644
index 0000000000000000000000000000000000000000..323e5ecfc420ad71d4ea6890405ca4af8a03bafd
--- /dev/null
+++ b/samples/client/petstore/swift4/objcCompatible/Info.plist
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>$(DEVELOPMENT_LANGUAGE)</string>
+	<key>CFBundleExecutable</key>
+	<string>$(EXECUTABLE_NAME)</string>
+	<key>CFBundleIdentifier</key>
+	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>$(PRODUCT_NAME)</string>
+	<key>CFBundlePackageType</key>
+	<string>FMWK</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleVersion</key>
+	<string>1</string>
+</dict>
+</plist>
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/objcCompatible/PetstoreClient.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000000000000000000000000000000000..55021e5d191a647e392c49f6d0b550bbd2be0f0f
--- /dev/null
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient.xcodeproj/project.pbxproj
@@ -0,0 +1,601 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 50;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */; };
+		0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */; };
+		08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */; };
+		08F5828F0C2BCF07A9E4917DBBB993AE /* AdditionalPropertiesInteger.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA2F3566156A4ABC465F201B4A1F6227 /* AdditionalPropertiesInteger.swift */; };
+		1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */; };
+		122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */; };
+		12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */; };
+		12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */; };
+		16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */; };
+		18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 212AA914B7F1793A4E32C119370FB05F /* Cat.swift */; };
+		196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */; };
+		271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */; };
+		293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */; };
+		297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */; };
+		2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */; };
+		2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */; };
+		3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */; };
+		36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */; };
+		39F9FBA1AC5C2612ECA1FF715EBFC287 /* AdditionalPropertiesString.swift in Sources */ = {isa = PBXBuildFile; fileRef = FFE215C1B526E0418ED301B15357B970 /* AdditionalPropertiesString.swift */; };
+		3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */; };
+		41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */; };
+		42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */; };
+		491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */; };
+		4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */; };
+		52B5604F986335DB69CD2B430FB83BAB /* AdditionalPropertiesAnyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5AB1037D937AADF8B4A70C96D5E5D61 /* AdditionalPropertiesAnyType.swift */; };
+		58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */; };
+		59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */; };
+		59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */; };
+		59EAB3527305A37ED99FB210045B69EA /* AdditionalPropertiesNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E0512B3582586B4C0C598D5DB1C0D39 /* AdditionalPropertiesNumber.swift */; };
+		5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */; };
+		655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */; };
+		6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */; };
+		6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */; };
+		7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */; };
+		82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */; };
+		83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */; };
+		92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = A913A57E72D723632E9A718FF4525C81 /* Client.swift */; };
+		97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */; };
+		988F461F59E4E1091156840007CB3773 /* AdditionalPropertiesBoolean.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CC24C01A55F644957196F9F81D10F81 /* AdditionalPropertiesBoolean.swift */; };
+		A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */; };
+		A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */; };
+		A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */; };
+		AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */; };
+		B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */; };
+		BB02FDCF1B2B0E457E1C2BF39FBB599D /* XmlItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */; };
+		BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */; };
+		C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */; };
+		C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A6070F581E611FF44AFD40A4315C49A /* List.swift */; };
+		C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */; };
+		C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */; };
+		D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */; };
+		D68F23CD4B5178493CE7AE8DFB868EAE /* AdditionalPropertiesArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FEE553331890581C2FF366F9EA0956D /* AdditionalPropertiesArray.swift */; };
+		D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */; };
+		DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */; };
+		DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */; };
+		DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */; };
+		DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */; };
+		E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 386FD590658E90509C121118F057604D /* SpecialModelName.swift */; };
+		E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */; };
+		E57CD12D2F500D40B4135D0F5ECA9866 /* AdditionalPropertiesObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72FEDC94BA0E37214D360871B284BC8A /* AdditionalPropertiesObject.swift */; };
+		F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8699F7966F748ED026A6FB4CF550442B /* Models.swift */; };
+		F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = C81447828475F76C5CF4F08AA65292F7 /* Return.swift */; };
+		FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */; };
+		FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+		02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodableHelper.swift; sourceTree = "<group>"; };
+		0CC24C01A55F644957196F9F81D10F81 /* AdditionalPropertiesBoolean.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesBoolean.swift; sourceTree = "<group>"; };
+		10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = "<group>"; };
+		164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderExample.swift; sourceTree = "<group>"; };
+		1E0512B3582586B4C0C598D5DB1C0D39 /* AdditionalPropertiesNumber.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesNumber.swift; sourceTree = "<group>"; };
+		212AA914B7F1793A4E32C119370FB05F /* Cat.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = "<group>"; };
+		27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = "<group>"; };
+		28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = "<group>"; };
+		3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = "<group>"; };
+		35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodingHelper.swift; sourceTree = "<group>"; };
+		37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIs.swift; sourceTree = "<group>"; };
+		386FD590658E90509C121118F057604D /* SpecialModelName.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = "<group>"; };
+		3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = "<group>"; };
+		396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CatAllOf.swift; sourceTree = "<group>"; };
+		3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = "<group>"; };
+		47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = "<group>"; };
+		4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = "<group>"; };
+		4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = "<group>"; };
+		4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = "<group>"; };
+		4FEE553331890581C2FF366F9EA0956D /* AdditionalPropertiesArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesArray.swift; sourceTree = "<group>"; };
+		5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = "<group>"; };
+		6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = "<group>"; };
+		6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = "<group>"; };
+		6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = "<group>"; };
+		72FEDC94BA0E37214D360871B284BC8A /* AdditionalPropertiesObject.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesObject.swift; sourceTree = "<group>"; };
+		7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = "<group>"; };
+		7A6070F581E611FF44AFD40A4315C49A /* List.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = "<group>"; };
+		7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = "<group>"; };
+		82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = "<group>"; };
+		84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlamofireImplementations.swift; sourceTree = "<group>"; };
+		8699F7966F748ED026A6FB4CF550442B /* Models.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Models.swift; sourceTree = "<group>"; };
+		897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIHelper.swift; sourceTree = "<group>"; };
+		8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = "<group>"; };
+		95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = "<group>"; };
+		9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodableEncoding.swift; sourceTree = "<group>"; };
+		9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = "<group>"; };
+		9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = "<group>"; };
+		A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DogAllOf.swift; sourceTree = "<group>"; };
+		A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XmlItem.swift; sourceTree = "<group>"; };
+		A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Alamofire.framework; sourceTree = "<group>"; };
+		A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = "<group>"; };
+		A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = "<group>"; };
+		A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = "<group>"; };
+		A913A57E72D723632E9A718FF4525C81 /* Client.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = "<group>"; };
+		B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = "<group>"; };
+		B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = "<group>"; };
+		B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = "<group>"; };
+		B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = "<group>"; };
+		C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = "<group>"; };
+		C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = "<group>"; };
+		C81447828475F76C5CF4F08AA65292F7 /* Return.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = "<group>"; };
+		E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = "<group>"; };
+		EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderDefault.swift; sourceTree = "<group>"; };
+		ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = "<group>"; };
+		F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = "<group>"; };
+		F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = "<group>"; };
+		F5AB1037D937AADF8B4A70C96D5E5D61 /* AdditionalPropertiesAnyType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesAnyType.swift; sourceTree = "<group>"; };
+		FA2F3566156A4ABC465F201B4A1F6227 /* AdditionalPropertiesInteger.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesInteger.swift; sourceTree = "<group>"; };
+		FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = "<group>"; };
+		FFE215C1B526E0418ED301B15357B970 /* AdditionalPropertiesString.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesString.swift; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				7861EE241895128F64DD787367B3022D /* Carthage */,
+			);
+			name = Frameworks;
+			sourceTree = "<group>";
+		};
+		4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */ = {
+			isa = PBXGroup;
+			children = (
+				F5AB1037D937AADF8B4A70C96D5E5D61 /* AdditionalPropertiesAnyType.swift */,
+				4FEE553331890581C2FF366F9EA0956D /* AdditionalPropertiesArray.swift */,
+				0CC24C01A55F644957196F9F81D10F81 /* AdditionalPropertiesBoolean.swift */,
+				396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */,
+				FA2F3566156A4ABC465F201B4A1F6227 /* AdditionalPropertiesInteger.swift */,
+				1E0512B3582586B4C0C598D5DB1C0D39 /* AdditionalPropertiesNumber.swift */,
+				72FEDC94BA0E37214D360871B284BC8A /* AdditionalPropertiesObject.swift */,
+				FFE215C1B526E0418ED301B15357B970 /* AdditionalPropertiesString.swift */,
+				95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */,
+				8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */,
+				A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */,
+				7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */,
+				B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */,
+				F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */,
+				A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */,
+				212AA914B7F1793A4E32C119370FB05F /* Cat.swift */,
+				3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */,
+				6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */,
+				3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */,
+				A913A57E72D723632E9A718FF4525C81 /* Client.swift */,
+				C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */,
+				A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */,
+				10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */,
+				4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */,
+				FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */,
+				3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */,
+				4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */,
+				3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */,
+				4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */,
+				7A6070F581E611FF44AFD40A4315C49A /* List.swift */,
+				7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */,
+				9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */,
+				82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */,
+				5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */,
+				B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */,
+				27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */,
+				F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */,
+				C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */,
+				ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */,
+				6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */,
+				C81447828475F76C5CF4F08AA65292F7 /* Return.swift */,
+				386FD590658E90509C121118F057604D /* SpecialModelName.swift */,
+				47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */,
+				B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */,
+				EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */,
+				19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */,
+				E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */,
+				A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */,
+			);
+			path = Models;
+			sourceTree = "<group>";
+		};
+		5FBA6AE5F64CD737F88B4565AC3CCD3B = {
+			isa = PBXGroup;
+			children = (
+				9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */,
+				1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */,
+				857F0DEA1890CE66D6DAD556C55821A6 /* Products */,
+			);
+			sourceTree = "<group>";
+		};
+		67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */ = {
+			isa = PBXGroup;
+			children = (
+				84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */,
+				897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */,
+				37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */,
+				02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */,
+				28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */,
+				B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */,
+				9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */,
+				35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */,
+				8699F7966F748ED026A6FB4CF550442B /* Models.swift */,
+				F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */,
+				4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */,
+			);
+			path = OpenAPIs;
+			sourceTree = "<group>";
+		};
+		7861EE241895128F64DD787367B3022D /* Carthage */ = {
+			isa = PBXGroup;
+			children = (
+				A012205B41CB71A62B86EECDEAFB0990 /* iOS */,
+			);
+			name = Carthage;
+			path = Carthage/Build;
+			sourceTree = "<group>";
+		};
+		857F0DEA1890CE66D6DAD556C55821A6 /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+		9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */ = {
+			isa = PBXGroup;
+			children = (
+				EF4C81BDD734856ED5023B777D35098B /* Classes */,
+			);
+			path = PetstoreClient;
+			sourceTree = "<group>";
+		};
+		A012205B41CB71A62B86EECDEAFB0990 /* iOS */ = {
+			isa = PBXGroup;
+			children = (
+				A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */,
+			);
+			path = iOS;
+			sourceTree = "<group>";
+		};
+		EF4C81BDD734856ED5023B777D35098B /* Classes */ = {
+			isa = PBXGroup;
+			children = (
+				67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */,
+			);
+			path = Classes;
+			sourceTree = "<group>";
+		};
+		F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */ = {
+			isa = PBXGroup;
+			children = (
+				9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */,
+				6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */,
+				B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */,
+				9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */,
+				A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */,
+				7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */,
+			);
+			path = APIs;
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+		C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */;
+			buildPhases = (
+				E539708354CE60FE486F81EDE56D13C8 /* Sources */,
+				D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = PetstoreClient;
+			productName = PetstoreClient;
+			productReference = 164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */;
+			productType = "com.apple.product-type.framework";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		E7D276EE2369D8C455513C2E05F9AED0 /* Project object */ = {
+			isa = PBXProject;
+			attributes = {
+				LastUpgradeCheck = 1000;
+			};
+			buildConfigurationList = ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */;
+			compatibilityVersion = "Xcode 9.3";
+			developmentRegion = en;
+			hasScannedForEncodings = 0;
+			knownRegions = (
+				en,
+			);
+			mainGroup = 5FBA6AE5F64CD737F88B4565AC3CCD3B;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+				C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXSourcesBuildPhase section */
+		E539708354CE60FE486F81EDE56D13C8 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */,
+				0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */,
+				52B5604F986335DB69CD2B430FB83BAB /* AdditionalPropertiesAnyType.swift in Sources */,
+				D68F23CD4B5178493CE7AE8DFB868EAE /* AdditionalPropertiesArray.swift in Sources */,
+				988F461F59E4E1091156840007CB3773 /* AdditionalPropertiesBoolean.swift in Sources */,
+				12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */,
+				08F5828F0C2BCF07A9E4917DBBB993AE /* AdditionalPropertiesInteger.swift in Sources */,
+				59EAB3527305A37ED99FB210045B69EA /* AdditionalPropertiesNumber.swift in Sources */,
+				E57CD12D2F500D40B4135D0F5ECA9866 /* AdditionalPropertiesObject.swift in Sources */,
+				39F9FBA1AC5C2612ECA1FF715EBFC287 /* AdditionalPropertiesString.swift in Sources */,
+				58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */,
+				02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */,
+				DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */,
+				83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */,
+				97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */,
+				3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */,
+				A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */,
+				C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */,
+				7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */,
+				18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */,
+				41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */,
+				42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */,
+				5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */,
+				92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */,
+				6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */,
+				DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */,
+				D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */,
+				271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */,
+				A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */,
+				59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */,
+				08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */,
+				C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */,
+				297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */,
+				A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */,
+				FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */,
+				491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */,
+				36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */,
+				DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */,
+				16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */,
+				12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */,
+				C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */,
+				655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */,
+				D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */,
+				2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */,
+				F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */,
+				C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */,
+				AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */,
+				59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */,
+				82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */,
+				1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */,
+				B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */,
+				3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */,
+				293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */,
+				F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */,
+				E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */,
+				122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */,
+				196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */,
+				E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */,
+				6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */,
+				FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */,
+				BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */,
+				DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */,
+				BB02FDCF1B2B0E457E1C2BF39FBB599D /* XmlItem.swift in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+		3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Release;
+		};
+		A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_TESTABILITY = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"$(inherited)",
+					"DEBUG=1",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+				SWIFT_VERSION = 4.2;
+			};
+			name = Debug;
+		};
+		DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Debug;
+		};
+		F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
+				SWIFT_VERSION = 4.2;
+				VALIDATE_PRODUCT = YES;
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */,
+				3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = "";
+		};
+		ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */,
+				F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Debug;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = E7D276EE2369D8C455513C2E05F9AED0 /* Project object */;
+}
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/samples/client/petstore/swift4/objcCompatible/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000000000000000000000000000000000000..919434a6254f0e9651f402737811be6634a03e9c
--- /dev/null
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:">
+   </FileRef>
+</Workspace>
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme b/samples/client/petstore/swift4/objcCompatible/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
new file mode 100644
index 0000000000000000000000000000000000000000..7802e379453b951ec5f78c0f1c296a38b2ee90e4
--- /dev/null
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "1000"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+               BuildableName = "PetstoreClient.framework"
+               BlueprintName = "PetstoreClient"
+               ReferencedContainer = "container:PetstoreClient.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <CommandLineArguments>
+      </CommandLineArguments>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIHelper.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
index d94614b34fc71f50736db77e0d046bb2d356b30e..75dea24395752b328facec8e593fcac7ea470217 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
@@ -7,7 +7,7 @@
 import Foundation
 
 public struct APIHelper {
-    public static func rejectNil(_ source: [String:Any?]) -> [String:Any]? {
+    public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? {
         let destination = source.reduce(into: [String: Any]()) { (result, item) in
             if let value = item.value {
                 result[item.key] = value
@@ -20,17 +20,17 @@ public struct APIHelper {
         return destination
     }
 
-    public static func rejectNilHeaders(_ source: [String:Any?]) -> [String:String] {
+    public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] {
         return source.reduce(into: [String: String]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
-                result[item.key] = collection.filter({ $0 != nil }).map{ "\($0!)" }.joined(separator: ",")
+                result[item.key] = collection.filter({ $0 != nil }).map { "\($0!)" }.joined(separator: ",")
             } else if let value: Any = item.value {
                 result[item.key] = "\(value)"
             }
         }
     }
 
-    public static func convertBoolToString(_ source: [String: Any]?) -> [String:Any]? {
+    public static func convertBoolToString(_ source: [String: Any]?) -> [String: Any]? {
         guard let source = source else {
             return nil
         }
@@ -52,7 +52,7 @@ public struct APIHelper {
         return source
     }
 
-    public static func mapValuesToQueryItems(_ source: [String:Any?]) -> [URLQueryItem]? {
+    public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? {
         let destination = source.filter({ $0.value != nil}).reduce(into: [URLQueryItem]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
                 let value = collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",")
@@ -68,4 +68,3 @@ public struct APIHelper {
         return destination
     }
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs.swift
index 2890bffa2747d155c7c4c021610132c197ef2c83..9e4312f685de410bc328b2da41601768b1920229 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs.swift
@@ -9,22 +9,22 @@ import Foundation
 open class PetstoreClientAPI {
     public static var basePath = "http://petstore.swagger.io:80/v2"
     public static var credential: URLCredential?
-    public static var customHeaders: [String:String] = [:]
+    public static var customHeaders: [String: String] = [:]
     public static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory()
 }
 
 open class RequestBuilder<T> {
     var credential: URLCredential?
-    var headers: [String:String]
-    public let parameters: [String:Any]?
+    var headers: [String: String]
+    public let parameters: [String: Any]?
     public let isBody: Bool
     public let method: String
     public let URLString: String
 
     /// Optional block to obtain a reference to the request's progress instance when available.
-    public var onProgressReady: ((Progress) -> ())?
+    public var onProgressReady: ((Progress) -> Void)?
 
-    required public init(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         self.method = method
         self.URLString = URLString
         self.parameters = parameters
@@ -34,7 +34,7 @@ open class RequestBuilder<T> {
         addHeaders(PetstoreClientAPI.customHeaders)
     }
 
-    open func addHeaders(_ aHeaders:[String:String]) {
+    open func addHeaders(_ aHeaders: [String: String]) {
         for (header, value) in aHeaders {
             headers[header] = value
         }
@@ -57,5 +57,5 @@ open class RequestBuilder<T> {
 
 public protocol RequestBuilderFactory {
     func getNonDecodableBuilder<T>() -> RequestBuilder<T>.Type
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type
 }
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
index ffecb66c48c25d53c4b16c04fd9ea29704f4c870..30b346de0e1de39c998064f533ab75e67e925d46 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class AnotherFakeAPI {
     /**
      To test special tags
@@ -17,7 +15,7 @@ open class AnotherFakeAPI {
      - parameter body: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func call123testSpecialTags(body: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func call123testSpecialTags(body: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         call123testSpecialTagsWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
index 2bfd5a21d7a371ef7c884b6cabb4086800e2643f..4198e765465085c7e16886e04629bd7857628de1 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class FakeAPI {
     /**
      creates an XmlItem
@@ -17,7 +15,7 @@ open class FakeAPI {
      - parameter xmlItem: (body) XmlItem Body 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createXmlItem(xmlItem: XmlItem, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createXmlItem(xmlItem: XmlItem, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createXmlItemWithRequestBuilder(xmlItem: xmlItem).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -51,7 +49,7 @@ open class FakeAPI {
      - parameter body: (body) Input boolean as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterBooleanSerialize(body: Bool? = nil, completion: @escaping ((_ data: Bool?,_ error: Error?) -> Void)) {
+    open class func fakeOuterBooleanSerialize(body: Bool? = nil, completion: @escaping ((_ data: Bool?, _ error: Error?) -> Void)) {
         fakeOuterBooleanSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -80,7 +78,7 @@ open class FakeAPI {
      - parameter body: (body) Input composite as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, completion: @escaping ((_ data: OuterComposite?,_ error: Error?) -> Void)) {
+    open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, completion: @escaping ((_ data: OuterComposite?, _ error: Error?) -> Void)) {
         fakeOuterCompositeSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -109,7 +107,7 @@ open class FakeAPI {
      - parameter body: (body) Input number as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterNumberSerialize(body: Double? = nil, completion: @escaping ((_ data: Double?,_ error: Error?) -> Void)) {
+    open class func fakeOuterNumberSerialize(body: Double? = nil, completion: @escaping ((_ data: Double?, _ error: Error?) -> Void)) {
         fakeOuterNumberSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -138,7 +136,7 @@ open class FakeAPI {
      - parameter body: (body) Input string as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterStringSerialize(body: String? = nil, completion: @escaping ((_ data: String?,_ error: Error?) -> Void)) {
+    open class func fakeOuterStringSerialize(body: String? = nil, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
         fakeOuterStringSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -167,7 +165,7 @@ open class FakeAPI {
      - parameter body: (body)  
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -201,7 +199,7 @@ open class FakeAPI {
      - parameter body: (body)  
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -238,7 +236,7 @@ open class FakeAPI {
      - parameter body: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testClientModel(body: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func testClientModel(body: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         testClientModelWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -282,7 +280,7 @@ open class FakeAPI {
      - parameter callback: (form) None (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -318,7 +316,7 @@ open class FakeAPI {
     open class func testEndpointParametersWithRequestBuilder(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "integer": integer?.encodeToJSON(),
             "int32": int32?.encodeToJSON(),
             "int64": int64?.encodeToJSON(),
@@ -337,7 +335,7 @@ open class FakeAPI {
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -425,7 +423,7 @@ open class FakeAPI {
      - parameter enumFormString: (form) Form parameter enum test (string) (optional, default to .-efg)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -452,19 +450,19 @@ open class FakeAPI {
     open class func testEnumParametersWithRequestBuilder(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "enum_form_string_array": enumFormStringArray,
             "enum_form_string": enumFormString?.rawValue
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "enum_query_string_array": enumQueryStringArray, 
-            "enum_query_string": enumQueryString?.rawValue, 
-            "enum_query_integer": enumQueryInteger?.rawValue, 
+            "enum_query_string_array": enumQueryStringArray,
+            "enum_query_string": enumQueryString?.rawValue,
+            "enum_query_integer": enumQueryInteger?.rawValue,
             "enum_query_double": enumQueryDouble?.rawValue
         ])
         let nillableHeaders: [String: Any?] = [
@@ -489,7 +487,7 @@ open class FakeAPI {
      - parameter int64Group: (query) Integer in group parameters (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -514,13 +512,13 @@ open class FakeAPI {
     open class func testGroupParametersWithRequestBuilder(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "required_string_group": requiredStringGroup.encodeToJSON(), 
-            "required_int64_group": requiredInt64Group.encodeToJSON(), 
-            "string_group": stringGroup?.encodeToJSON(), 
+            "required_string_group": requiredStringGroup.encodeToJSON(),
+            "required_int64_group": requiredInt64Group.encodeToJSON(),
+            "string_group": stringGroup?.encodeToJSON(),
             "int64_group": int64Group?.encodeToJSON()
         ])
         let nillableHeaders: [String: Any?] = [
@@ -540,7 +538,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testInlineAdditionalProperties(param: [String:String], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testInlineAdditionalProperties(param: [String: String], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -556,7 +554,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - returns: RequestBuilder<Void> 
      */
-    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String:String]) -> RequestBuilder<Void> {
+    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String: String]) -> RequestBuilder<Void> {
         let path = "/fake/inline-additionalProperties"
         let URLString = PetstoreClientAPI.basePath + path
         let parameters = JSONEncodingHelper.encodingParameters(forEncodableObject: param)
@@ -575,7 +573,7 @@ open class FakeAPI {
      - parameter param2: (form) field2 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -595,14 +593,14 @@ open class FakeAPI {
     open class func testJsonFormDataWithRequestBuilder(param: String, param2: String) -> RequestBuilder<Void> {
         let path = "/fake/jsonFormData"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "param": param,
             "param2": param2
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
index ddfeae23edd0ba8ef0f297a5fd5e4d85781c4f83..6bfa09016f5a29ac2189b02e2986d8623a499a70 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class FakeClassnameTags123API {
     /**
      To test class name in snake case
@@ -17,7 +15,7 @@ open class FakeClassnameTags123API {
      - parameter body: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testClassname(body: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func testClassname(body: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         testClassnameWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
index 0a5dfeb39b62e92a76f21ba58190bc3de827380f..896f1511805f44687db6e8d35a9f0ff7182c6b2b 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class PetAPI {
     /**
      Add a new pet to the store
@@ -17,7 +15,7 @@ open class PetAPI {
      - parameter body: (body) Pet object that needs to be added to the store 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func addPet(body: Pet, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func addPet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         addPetWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -55,7 +53,7 @@ open class PetAPI {
      - parameter apiKey: (header)  (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deletePet(petId: Int64, apiKey: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func deletePet(petId: Int64, apiKey: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -81,8 +79,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
         let nillableHeaders: [String: Any?] = [
             "api_key": apiKey
@@ -109,7 +107,7 @@ open class PetAPI {
      - parameter status: (query) Status values that need to be considered for filter 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func findPetsByStatus(status: [String], completion: @escaping ((_ data: [Pet]?,_ error: Error?) -> Void)) {
+    open class func findPetsByStatus(status: [String], completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
         findPetsByStatusWithRequestBuilder(status: status).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -128,8 +126,8 @@ open class PetAPI {
     open class func findPetsByStatusWithRequestBuilder(status: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByStatus"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "status": status
@@ -146,7 +144,7 @@ open class PetAPI {
      - parameter tags: (query) Tags to filter by 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func findPetsByTags(tags: [String], completion: @escaping ((_ data: [Pet]?,_ error: Error?) -> Void)) {
+    open class func findPetsByTags(tags: [String], completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
         findPetsByTagsWithRequestBuilder(tags: tags).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -165,8 +163,8 @@ open class PetAPI {
     open class func findPetsByTagsWithRequestBuilder(tags: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByTags"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "tags": tags
@@ -183,7 +181,7 @@ open class PetAPI {
      - parameter petId: (path) ID of pet to return 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getPetById(petId: Int64, completion: @escaping ((_ data: Pet?,_ error: Error?) -> Void)) {
+    open class func getPetById(petId: Int64, completion: @escaping ((_ data: Pet?, _ error: Error?) -> Void)) {
         getPetByIdWithRequestBuilder(petId: petId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -205,8 +203,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Pet>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -220,7 +218,7 @@ open class PetAPI {
      - parameter body: (body) Pet object that needs to be added to the store 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updatePet(body: Pet, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func updatePet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         updatePetWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -259,7 +257,7 @@ open class PetAPI {
      - parameter status: (form) Updated status of the pet (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -286,14 +284,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "name": name,
             "status": status
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -309,7 +307,7 @@ open class PetAPI {
      - parameter file: (form) file to upload (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, completion: @escaping ((_ data: ApiResponse?,_ error: Error?) -> Void)) {
+    open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, completion: @escaping ((_ data: ApiResponse?, _ error: Error?) -> Void)) {
         uploadFileWithRequestBuilder(petId: petId, additionalMetadata: additionalMetadata, file: file).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -332,14 +330,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "file": file
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -355,7 +353,7 @@ open class PetAPI {
      - parameter additionalMetadata: (form) Additional data to pass to server (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil, completion: @escaping ((_ data: ApiResponse?,_ error: Error?) -> Void)) {
+    open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil, completion: @escaping ((_ data: ApiResponse?, _ error: Error?) -> Void)) {
         uploadFileWithRequiredFileWithRequestBuilder(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -378,14 +376,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "requiredFile": requiredFile
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
index a2bced598f0dc881287cb24338b768b2408384f0..71949b335d7787ed77427b9e35b68e55c6384567 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class StoreAPI {
     /**
      Delete purchase order by ID
@@ -17,7 +15,7 @@ open class StoreAPI {
      - parameter orderId: (path) ID of the order that needs to be deleted 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         deleteOrderWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -40,8 +38,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -54,7 +52,7 @@ open class StoreAPI {
      
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getInventory(completion: @escaping ((_ data: [String:Int]?,_ error: Error?) -> Void)) {
+    open class func getInventory(completion: @escaping ((_ data: [String: Int]?, _ error: Error?) -> Void)) {
         getInventoryWithRequestBuilder().execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -69,14 +67,14 @@ open class StoreAPI {
        - name: api_key
      - returns: RequestBuilder<[String:Int]> 
      */
-    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String:Int]> {
+    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String: Int]> {
         let path = "/store/inventory"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
-        let requestBuilder: RequestBuilder<[String:Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+        let requestBuilder: RequestBuilder<[String: Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
 
         return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false)
     }
@@ -87,7 +85,7 @@ open class StoreAPI {
      - parameter orderId: (path) ID of pet that needs to be fetched 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getOrderById(orderId: Int64, completion: @escaping ((_ data: Order?,_ error: Error?) -> Void)) {
+    open class func getOrderById(orderId: Int64, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
         getOrderByIdWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -106,8 +104,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Order>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -121,7 +119,7 @@ open class StoreAPI {
      - parameter body: (body) order placed for purchasing the pet 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func placeOrder(body: Order, completion: @escaping ((_ data: Order?,_ error: Error?) -> Void)) {
+    open class func placeOrder(body: Order, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
         placeOrderWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
index d8cafaf2c9627daa1b2363ffc5899e2ddb6344c5..efeb64468a5cd74eaf97915e41267dc9fceddb5e 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class UserAPI {
     /**
      Create user
@@ -17,7 +15,7 @@ open class UserAPI {
      - parameter body: (body) Created user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUser(body: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createUser(body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createUserWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -52,7 +50,7 @@ open class UserAPI {
      - parameter body: (body) List of user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUsersWithArrayInput(body: [User], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createUsersWithArrayInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createUsersWithArrayInputWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -86,7 +84,7 @@ open class UserAPI {
      - parameter body: (body) List of user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUsersWithListInput(body: [User], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createUsersWithListInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createUsersWithListInputWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -120,7 +118,7 @@ open class UserAPI {
      - parameter username: (path) The name that needs to be deleted 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deleteUser(username: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func deleteUser(username: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         deleteUserWithRequestBuilder(username: username).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -143,8 +141,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -158,7 +156,7 @@ open class UserAPI {
      - parameter username: (path) The name that needs to be fetched. Use user1 for testing. 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getUserByName(username: String, completion: @escaping ((_ data: User?,_ error: Error?) -> Void)) {
+    open class func getUserByName(username: String, completion: @escaping ((_ data: User?, _ error: Error?) -> Void)) {
         getUserByNameWithRequestBuilder(username: username).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -176,8 +174,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<User>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -192,7 +190,7 @@ open class UserAPI {
      - parameter password: (query) The password for login in clear text 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func loginUser(username: String, password: String, completion: @escaping ((_ data: String?,_ error: Error?) -> Void)) {
+    open class func loginUser(username: String, password: String, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
         loginUserWithRequestBuilder(username: username, password: password).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -209,11 +207,11 @@ open class UserAPI {
     open class func loginUserWithRequestBuilder(username: String, password: String) -> RequestBuilder<String> {
         let path = "/user/login"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "username": username, 
+            "username": username,
             "password": password
         ])
 
@@ -227,7 +225,7 @@ open class UserAPI {
      
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func logoutUser(completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func logoutUser(completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         logoutUserWithRequestBuilder().execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -245,8 +243,8 @@ open class UserAPI {
     open class func logoutUserWithRequestBuilder() -> RequestBuilder<Void> {
         let path = "/user/logout"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -261,7 +259,7 @@ open class UserAPI {
      - parameter body: (body) Updated user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updateUser(username: String, body: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func updateUser(username: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         updateUserWithRequestBuilder(username: username, body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
index dac40e9a31cfbf7c6194a337ddd9ab7cafb16b35..04ad02a5ce88e02b302bcdb3f9b02522a5509b5a 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
@@ -12,7 +12,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
         return AlamofireRequestBuilder<T>.self
     }
 
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type {
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type {
         return AlamofireDecodableRequestBuilder<T>.self
     }
 }
@@ -50,7 +50,7 @@ private struct SynchronizedDictionary<K: Hashable, V> {
 private var managerStore = SynchronizedDictionary<String, Alamofire.SessionManager>()
 
 open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
-    required public init(method: String, URLString: String, parameters: [String : Any]?, isBody: Bool, headers: [String : String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         super.init(method: method, URLString: URLString, parameters: parameters, isBody: isBody, headers: headers)
     }
 
@@ -88,17 +88,17 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
      May be overridden by a subclass if you want to control the request
      configuration (e.g. to override the cache policy).
      */
-    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String:String]) -> DataRequest {
+    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) -> DataRequest {
         return manager.request(URLString, method: method, parameters: parameters, encoding: encoding, headers: headers)
     }
 
     override open func execute(_ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
-        let managerId:String = UUID().uuidString
+        let managerId: String = UUID().uuidString
         // Create a new manager for each request to customize its request header
         let manager = createSessionManager()
         managerStore[managerId] = manager
 
-        let encoding:ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
+        let encoding: ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
 
         let xMethod = Alamofire.HTTPMethod(rawValue: method)
         let fileKeys = parameters == nil ? [] : parameters!.filter { $1 is NSURL }
@@ -111,8 +111,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
                     case let fileURL as URL:
                         if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
                             mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
-                        }
-                        else {
+                        } else {
                             mpForm.append(fileURL, withName: k)
                         }
                     case let string as String:
@@ -276,7 +275,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
         return httpHeaders
     }
 
-    fileprivate func getFileName(fromContentDisposition contentDisposition : String?) -> String? {
+    fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? {
 
         guard let contentDisposition = contentDisposition else {
             return nil
@@ -284,7 +283,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
         let items = contentDisposition.components(separatedBy: ";")
 
-        var filename : String? = nil
+        var filename: String? = nil
 
         for contentItem in items {
 
@@ -304,7 +303,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getPath(from url : URL) throws -> String {
+    fileprivate func getPath(from url: URL) throws -> String {
 
         guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else {
             throw DownloadException.requestMissingPath
@@ -318,7 +317,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getURL(from urlRequest : URLRequest) throws -> URL {
+    fileprivate func getURL(from urlRequest: URLRequest) throws -> URL {
 
         guard let url = urlRequest.url else {
             throw DownloadException.requestMissingURL
@@ -329,7 +328,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
 }
 
-fileprivate enum DownloadException : Error {
+private enum DownloadException: Error {
     case responseDataMissing
     case responseFailed
     case requestMissing
@@ -344,7 +343,7 @@ public enum AlamofireDecodableRequestBuilderError: Error {
     case generalError(Error)
 }
 
-open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilder<T> {
+open class AlamofireDecodableRequestBuilder<T: Decodable>: AlamofireRequestBuilder<T> {
 
     override fileprivate func processRequest(request: DataRequest, _ managerId: String, _ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
         if let credential = self.credential {
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
index 584de8c3d57a78a248749874fabd8245bf33f9fc..111d5a3a8cbe9afe5289cf58aa577d7c8f761a4a 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
@@ -13,7 +13,7 @@ open class CodableHelper {
 
     public static var dateformatter: DateFormatter?
 
-    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T : Decodable {
+    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable {
         var returnedDecodable: T? = nil
         var returnedError: Error? = nil
 
@@ -39,7 +39,7 @@ open class CodableHelper {
         return (returnedDecodable, returnedError)
     }
 
-    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T : Encodable {
+    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable {
         var returnedData: Data?
         var returnedError: Error? = nil
 
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Configuration.swift
index 516590da5d9e34183fdca8fef2901c7b53ab763b..e1ecb39726e7a8b435a6e688d95ddec9693fc3bc 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Configuration.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Configuration.swift
@@ -7,9 +7,9 @@
 import Foundation
 
 open class Configuration {
-	
+
 	// This value is used to configure the date formatter that is used to serialize dates into JSON format. 
 	// You must set it prior to encoding any dates, and it will only be read once. 
     public static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
-    
-}
\ No newline at end of file
+
+}
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Extensions.swift
index 8bf1829ba806b618d4e918b3c45a67c7a5a98803..24c128daadef77fdadd2629825a2d7ff04016e59 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Extensions.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Extensions.swift
@@ -112,24 +112,24 @@ extension String: CodingKey {
 
 extension KeyedEncodingContainerProtocol {
 
-    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T: Encodable {
         var arrayContainer = nestedUnkeyedContainer(forKey: key)
         try arrayContainer.encode(contentsOf: values)
     }
 
-    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable {
         if let values = values {
             try encodeArray(values, forKey: key)
         }
     }
 
-    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T : Encodable {
+    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T: Encodable {
         for (key, value) in pairs {
             try encode(value, forKey: key)
         }
     }
 
-    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T : Encodable {
+    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T: Encodable {
         if let pairs = pairs {
             try encodeMap(pairs)
         }
@@ -139,7 +139,7 @@ extension KeyedEncodingContainerProtocol {
 
 extension KeyedDecodingContainerProtocol {
 
-    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T : Decodable {
+    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable {
         var tmpArray = [T]()
 
         var nestedContainer = try nestedUnkeyedContainer(forKey: key)
@@ -151,7 +151,7 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T : Decodable {
+    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable {
         var tmpArray: [T]? = nil
 
         if contains(key) {
@@ -161,8 +161,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T : Decodable {
-        var map: [Self.Key : T] = [:]
+    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T: Decodable {
+        var map: [Self.Key: T] = [:]
 
         for key in allKeys {
             if !excludedKeys.contains(key) {
@@ -175,5 +175,3 @@ extension KeyedDecodingContainerProtocol {
     }
 
 }
-
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
index 70449515842de48fed6aec10ef246b1ad0f89e8b..3e68bb5d4a9b57609b955025cd250046c16fde0f 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
@@ -10,7 +10,7 @@ import Alamofire
 
 open class JSONEncodingHelper {
 
-    open class func encodingParameters<T:Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
+    open class func encodingParameters<T: Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
         var params: Parameters? = nil
 
         // Encode the Encodable object
@@ -39,5 +39,5 @@ open class JSONEncodingHelper {
 
         return params
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models.swift
index 408563890359088c1d97f24053ac1392706457bf..e87ce399c7c8b963ddee0f78a14a70a727751d1a 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models.swift
@@ -10,7 +10,7 @@ protocol JSONEncodable {
     func encodeToJSON() -> Any
 }
 
-public enum ErrorResponse : Error {
+public enum ErrorResponse: Error {
     case error(Int, Data?, Error)
 }
 
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift
index 796e46eca24765665ef582c8fd1a6fbac95f4ab6..94295c495c53b2868e08f0f091e7eaa6af3f480f 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesAnyType: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesAnyType: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Any] = [:]
+    public var additionalProperties: [String: Any] = [:]
 
     public subscript(key: String) -> Any? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesAnyType: Codable {
         additionalProperties = try container.decodeMap(Any.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift
index 5e58839b5a5f8329a444907d5bad016854da090e..cde9824ddb3ae7769d7978b047dbd49bf7e68cb7 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesArray: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesArray: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Array] = [:]
+    public var additionalProperties: [String: Array] = [:]
 
     public subscript(key: String) -> Array? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesArray: Codable {
         additionalProperties = try container.decodeMap(Array.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift
index d4c90829b4c767b0bf6daa85c3675bc5e5c56313..76791a9ddd3eb37dd793d196c8b719712c0b3dc9 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesBoolean: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesBoolean: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Bool] = [:]
+    public var additionalProperties: [String: Bool] = [:]
 
     public subscript(key: String) -> Bool? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesBoolean: Codable {
         additionalProperties = try container.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
index 0e2263b14e67a0b3db39eff66a598dc4bc6f6fba..a4e11337fb74c7b1408f213d6bc3f430d3c67982 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
@@ -7,23 +7,21 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesClass: Codable {
 
-    public var mapString: [String:String]?
-    public var mapNumber: [String:Double]?
-    public var mapInteger: [String:Int]?
-    public var mapBoolean: [String:Bool]?
-    public var mapArrayInteger: [String:[Int]]?
-    public var mapArrayAnytype: [String:[Any]]?
-    public var mapMapString: [String:[String:String]]?
-    public var mapMapAnytype: [String:[String:Any]]?
+    public var mapString: [String: String]?
+    public var mapNumber: [String: Double]?
+    public var mapInteger: [String: Int]?
+    public var mapBoolean: [String: Bool]?
+    public var mapArrayInteger: [String: [Int]]?
+    public var mapArrayAnytype: [String: [Any]]?
+    public var mapMapString: [String: [String: String]]?
+    public var mapMapAnytype: [String: [String: Any]]?
     public var anytype1: Any?
     public var anytype2: Any?
     public var anytype3: Any?
 
-    public init(mapString: [String:String]?, mapNumber: [String:Double]?, mapInteger: [String:Int]?, mapBoolean: [String:Bool]?, mapArrayInteger: [String:[Int]]?, mapArrayAnytype: [String:[Any]]?, mapMapString: [String:[String:String]]?, mapMapAnytype: [String:[String:Any]]?, anytype1: Any?, anytype2: Any?, anytype3: Any?) {
+    public init(mapString: [String: String]?, mapNumber: [String: Double]?, mapInteger: [String: Int]?, mapBoolean: [String: Bool]?, mapArrayInteger: [String: [Int]]?, mapArrayAnytype: [String: [Any]]?, mapMapString: [String: [String: String]]?, mapMapAnytype: [String: [String: Any]]?, anytype1: Any?, anytype2: Any?, anytype3: Any?) {
         self.mapString = mapString
         self.mapNumber = mapNumber
         self.mapInteger = mapInteger
@@ -37,7 +35,7 @@ public struct AdditionalPropertiesClass: Codable {
         self.anytype3 = anytype3
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapString = "map_string"
         case mapNumber = "map_number"
         case mapInteger = "map_integer"
@@ -51,6 +49,4 @@ public struct AdditionalPropertiesClass: Codable {
         case anytype3 = "anytype_3"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift
index b03bbe445653006ff99d546109fdf846f9e68b3c..4a0f2acaa4175d9bf1df53b47bb359fae7742d3f 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesInteger: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesInteger: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Int] = [:]
+    public var additionalProperties: [String: Int] = [:]
 
     public subscript(key: String) -> Int? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesInteger: Codable {
         additionalProperties = try container.decodeMap(Int.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift
index 9701d54c9b25f78b5bced7c3426c4d21b26a16bd..95e491000ab7d019a9ef8e5786c6c2d984ca128c 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesNumber: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesNumber: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Double] = [:]
+    public var additionalProperties: [String: Double] = [:]
 
     public subscript(key: String) -> Double? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesNumber: Codable {
         additionalProperties = try container.decodeMap(Double.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift
index c6e1e670b8cc61babbb2246f382423e425fab1c4..f45888a410196796958c7a6483c0f254c86c3032 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesObject: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesObject: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Dictionary] = [:]
+    public var additionalProperties: [String: Dictionary] = [:]
 
     public subscript(key: String) -> Dictionary? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesObject: Codable {
         additionalProperties = try container.decodeMap(Dictionary.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift
index 6128dce7d422e91dd79f6d293e2e1c516593aab9..7af63cc7152e17d728e72047916b7a664adc2f2c 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesString: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesString: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:String] = [:]
+    public var additionalProperties: [String: String] = [:]
 
     public subscript(key: String) -> String? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesString: Codable {
         additionalProperties = try container.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
index 7221a1be099dd896259e2c830046272e01191d98..5ed9f31e2a364d0bf7a25bdf70cecb48af6ab5c4 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Animal: Codable {
 
     public var className: String
@@ -19,6 +17,4 @@ public struct Animal: Codable {
         self.color = color
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
index e7bea63f8ed28132865ea4d3c23eab55666cf4f6..e09b0e9efdc8ca7798114f24aff21f57e8f9fabd 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
@@ -7,5 +7,4 @@
 
 import Foundation
 
-
 public typealias AnimalFarm = [Animal]
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
index a22e9aaebbb06bf18c9bf8a5893ab3e0ece6945d..ec270da8907438877ee5cc303b093ceba3993297 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ApiResponse: Codable {
 
     public var code: Int?
@@ -21,6 +19,4 @@ public struct ApiResponse: Codable {
         self.message = message
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
index 4e5a5ca1445d9faf133bded5a5c89297ea7c5822..3843287630b100a8210c60aff75d4286a44e46a7 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfArrayOfNumberOnly: Codable {
 
     public var arrayArrayNumber: [[Double]]?
@@ -17,10 +15,8 @@ public struct ArrayOfArrayOfNumberOnly: Codable {
         self.arrayArrayNumber = arrayArrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayArrayNumber = "ArrayArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
index 7d059d36833987dc60886960363e11e328dbcee2..f8b198e81f50d4cf237000ed8dae7d47779f8bf4 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfNumberOnly: Codable {
 
     public var arrayNumber: [Double]?
@@ -17,10 +15,8 @@ public struct ArrayOfNumberOnly: Codable {
         self.arrayNumber = arrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayNumber = "ArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
index 9c56fed50c2e79b759cdaceb078c82da316b463d..67f7f7e5151fd3bca131124815c75a0d9f8ade28 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayTest: Codable {
 
     public var arrayOfString: [String]?
@@ -21,12 +19,10 @@ public struct ArrayTest: Codable {
         self.arrayArrayOfModel = arrayArrayOfModel
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayOfString = "array_of_string"
         case arrayArrayOfInteger = "array_array_of_integer"
         case arrayArrayOfModel = "array_array_of_model"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
index 98cda23dac9e7415bc9a1a2cd1dd98fa389d885d..d576b50b1c9c1f2c4c7b719c7800e4da183e49ba 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Capitalization: Codable {
 
     public var smallCamel: String?
@@ -28,7 +26,7 @@ public struct Capitalization: Codable {
         self.ATT_NAME = ATT_NAME
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case smallCamel
         case capitalCamel = "CapitalCamel"
         case smallSnake = "small_Snake"
@@ -37,6 +35,4 @@ public struct Capitalization: Codable {
         case ATT_NAME
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
index 5675a053506466fcfc40f6f0c59dde1517474d49..7d819cbcc8f41780ee1484262ad244de69b186db 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Cat: Codable {
 
     public var className: String
@@ -26,6 +24,4 @@ public struct Cat: Codable {
         self.declawed = declawed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..a51ad0dffab1ba129591056cd816575af0e1ea09
--- /dev/null
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
@@ -0,0 +1,18 @@
+//
+// CatAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct CatAllOf: Codable {
+
+    public var declawed: Bool?
+
+    public init(declawed: Bool?) {
+        self.declawed = declawed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
index afdc89b6dd06dc98c4b315ba3f281437637085e1..abcd82b07837639168c0802e866c328a5c1ff8db 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Category: Codable {
 
     public var _id: Int64?
@@ -19,11 +17,9 @@ public struct Category: Codable {
         self.name = name
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
index f673ed127cd8a545ae575acfcdee044768f8ae12..28cb30ce7b4bee968edc3cef6724572481551b91 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model with \&quot;_class\&quot; property */
 
 public struct ClassModel: Codable {
@@ -18,6 +17,4 @@ public struct ClassModel: Codable {
         self._class = _class
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
index 51390b6c4eac28e4df699b05a826a5da163ad0e4..00245ca37280eea9c87184eb0f40fb8bf03b81f2 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Client: Codable {
 
     public var client: String?
@@ -17,6 +15,4 @@ public struct Client: Codable {
         self.client = client
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
index 239ce74dcc2166d80a516ed215f31c1ad52fa930..492c1228008eb782ea0f927f65259ce2c7999d24 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Dog: Codable {
 
     public var className: String
@@ -21,6 +19,4 @@ public struct Dog: Codable {
         self.breed = breed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..7786f8acc5ae7d0de7de7248ef5a94d4d16f0a17
--- /dev/null
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
@@ -0,0 +1,18 @@
+//
+// DogAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct DogAllOf: Codable {
+
+    public var breed: String?
+
+    public init(breed: String?) {
+        self.breed = breed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
index 8713961520e11abb6206697029d5a1fd6be66f00..5034ff0b8c684d21a45c635f4a4b9de56fb3cda1 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumArrays: Codable {
 
     public enum JustSymbol: String, Codable {
@@ -27,11 +25,9 @@ public struct EnumArrays: Codable {
         self.arrayEnum = arrayEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justSymbol = "just_symbol"
         case arrayEnum = "array_enum"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
index 7280a621fec75a24fafa361025faea5190af9f45..3c1dfcac577d12c69319e42cac6ea851bf5dcf28 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum EnumClass: String, Codable {
     case abc = "_abc"
     case efg = "-efg"
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
index 0f546c76a2183956d59c7d5d7bbc345ce58e1d8b..6db9b34d183ba0f97c10db4a22d60e85b5b2a54c 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumTest: Codable {
 
     public enum EnumString: String, Codable {
@@ -43,7 +41,7 @@ public struct EnumTest: Codable {
         self.outerEnum = outerEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case enumString = "enum_string"
         case enumStringRequired = "enum_string_required"
         case enumInteger = "enum_integer"
@@ -51,6 +49,4 @@ public struct EnumTest: Codable {
         case outerEnum
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/File.swift
index c8bd1f19589b528c826d65c456ecf8d9cc974097..ea3520f053dd690ade411e20d80082a7acf57785 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/File.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/File.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Must be named &#x60;File&#x60; for test. */
 
 public struct File: Codable {
@@ -19,6 +18,4 @@ public struct File: Codable {
         self.sourceURI = sourceURI
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
index 64d025068027aa26974661ff1af66421b86d4ab8..532f1457939af300b65f89821673cf1951ec2f0b 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FileSchemaTestClass: Codable {
 
     public var file: File?
@@ -19,6 +17,4 @@ public struct FileSchemaTestClass: Codable {
         self.files = files
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
index faa091b0658c6bb4c9d7cd06d8942eac1c19d382..20bd6d103b3dc87ffa6d7f38b21d957318628930 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FormatTest: Codable {
 
     public var integer: Int?
@@ -41,6 +39,4 @@ public struct FormatTest: Codable {
         self.password = password
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
index 554aee1081aa470de93a2c36c484b6427a67698a..906ddb06fb170e5de30f07754fce3efc4f512ee1 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct HasOnlyReadOnly: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct HasOnlyReadOnly: Codable {
         self.foo = foo
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/List.swift
index 8997340ff4befe18cc8f2754c7ea92620406571c..08d59953873e4cf8f3c5c133c58cf78c4a70f41e 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/List.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/List.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct List: Codable {
 
     public var _123list: String?
@@ -17,10 +15,8 @@ public struct List: Codable {
         self._123list = _123list
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _123list = "123-list"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
index 392c1e443839309bc2b89ac55b35fbac6c7f4270..358ca7a58d123da4df9bb1b900cb5defc34cc244 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
@@ -7,33 +7,29 @@
 
 import Foundation
 
-
-
 public struct MapTest: Codable {
 
     public enum MapOfEnumString: String, Codable {
         case upper = "UPPER"
         case lower = "lower"
     }
-    public var mapMapOfString: [String:[String:String]]?
-    public var mapOfEnumString: [String:String]?
-    public var directMap: [String:Bool]?
-    public var indirectMap: [String:Bool]?
+    public var mapMapOfString: [String: [String: String]]?
+    public var mapOfEnumString: [String: String]?
+    public var directMap: [String: Bool]?
+    public var indirectMap: [String: Bool]?
 
-    public init(mapMapOfString: [String:[String:String]]?, mapOfEnumString: [String:String]?, directMap: [String:Bool]?, indirectMap: [String:Bool]?) {
+    public init(mapMapOfString: [String: [String: String]]?, mapOfEnumString: [String: String]?, directMap: [String: Bool]?, indirectMap: [String: Bool]?) {
         self.mapMapOfString = mapMapOfString
         self.mapOfEnumString = mapOfEnumString
         self.directMap = directMap
         self.indirectMap = indirectMap
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapMapOfString = "map_map_of_string"
         case mapOfEnumString = "map_of_enum_string"
         case directMap = "direct_map"
         case indirectMap = "indirect_map"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
index 7116108fd7a3879ef9a8337cdd7ff8d8295a825e..c3deb2f28932f5d0ab338f3da2ac398de24a8822 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
@@ -7,20 +7,16 @@
 
 import Foundation
 
-
-
 public struct MixedPropertiesAndAdditionalPropertiesClass: Codable {
 
     public var uuid: UUID?
     public var dateTime: Date?
-    public var map: [String:Animal]?
+    public var map: [String: Animal]?
 
-    public init(uuid: UUID?, dateTime: Date?, map: [String:Animal]?) {
+    public init(uuid: UUID?, dateTime: Date?, map: [String: Animal]?) {
         self.uuid = uuid
         self.dateTime = dateTime
         self.map = map
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
index fc1d0606b7ba1788451c5add909cf4afb64031c9..7ed6aad907be01122bb19752a3622dc002d026be 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name starting with number */
 
 public struct Model200Response: Codable {
@@ -20,11 +19,9 @@ public struct Model200Response: Codable {
         self._class = _class
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case _class = "class"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
index cc165d767d91a0ac79941c3a1af5208e192941c9..ce9ffe4fb38e525fea73a67c24199de77214cb64 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name same as property name */
 
 public struct Name: Codable {
@@ -24,13 +23,11 @@ public struct Name: Codable {
         self._123number = _123number
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case snakeCase = "snake_case"
         case property
         case _123number = "123Number"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
index e6fb206093aa29bfd8254cffb0026bf04436d925..abd2269e8e76cbfae26cdc3c7582d486a13cfb60 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct NumberOnly: Codable {
 
     public var justNumber: Double?
@@ -17,10 +15,8 @@ public struct NumberOnly: Codable {
         self.justNumber = justNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justNumber = "JustNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
index 5cad29458b75eb196315062b6bd54d805399e568..f2b7565e2d9108c1328115d48f2154fe80c06332 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Order: Codable {
 
     public enum Status: String, Codable {
@@ -33,7 +31,7 @@ public struct Order: Codable {
         self.complete = complete
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case petId
         case quantity
@@ -42,6 +40,4 @@ public struct Order: Codable {
         case complete
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
index edc4523d9f0090260720b507ff61ac29df79e4ad..49aec001c5dbaeadfc67a0cfa9d2ad79fa3c20fb 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct OuterComposite: Codable {
 
     public var myNumber: Double?
@@ -21,12 +19,10 @@ public struct OuterComposite: Codable {
         self.myBoolean = myBoolean
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case myNumber = "my_number"
         case myString = "my_string"
         case myBoolean = "my_boolean"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
index bd1643d279edd46285735e726922a03f14b4c3e7..9f80fc95ecf0b11f47c6ec2f1e0e5a9a3ef000b0 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum OuterEnum: String, Codable {
     case placed = "placed"
     case approved = "approved"
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
index 3773bf53317e45689ec2bc0412a49621a24f4ec3..971ce9d4db6ee962e17ed924f2253146494b9668 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Pet: Codable {
 
     public enum Status: String, Codable {
@@ -33,7 +31,7 @@ public struct Pet: Codable {
         self.status = status
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case category
         case name
@@ -42,6 +40,4 @@ public struct Pet: Codable {
         case status
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
index 48b655a5b0aa2698abf0467fa038429ed3644075..0acd21fd10000317ffc9f96840a49b3dd538d0c7 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ReadOnlyFirst: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct ReadOnlyFirst: Codable {
         self.baz = baz
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
index de4b218999b7fda43e046a32e838f7c5807cd2d8..076082af842f1a3f7c6c1e19bffe9e3aecda4a31 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing reserved words */
 
 public struct Return: Codable {
@@ -18,10 +17,8 @@ public struct Return: Codable {
         self._return = _return
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _return = "return"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
index 213d896ba9882c8f8751f37efa757035910dab55..e79fc45c0e914a027b53334468238a95af0c36dd 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct SpecialModelName: Codable {
 
     public var specialPropertyName: Int64?
@@ -17,10 +15,8 @@ public struct SpecialModelName: Codable {
         self.specialPropertyName = specialPropertyName
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case specialPropertyName = "$special[property.name]"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
index ae15e87d94bba90e3d51a7c4275c06e65fbc4987..3f1237fee477a298b1d99cef8062371e2f101f59 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
@@ -7,12 +7,9 @@
 
 import Foundation
 
-
-
 public struct StringBooleanMap: Codable {
 
-
-    public var additionalProperties: [String:Bool] = [:]
+    public var additionalProperties: [String: Bool] = [:]
 
     public subscript(key: String) -> Bool? {
         get {
@@ -45,7 +42,4 @@ public struct StringBooleanMap: Codable {
         additionalProperties = try container.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
index 20f50efd3ac075769a0198fc9c933c404eac6252..83efe72b8a4e437c40aae7cb931abb5f53aaa98b 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Tag: Codable {
 
     public var _id: Int64?
@@ -19,11 +17,9 @@ public struct Tag: Codable {
         self.name = name
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
index be1afdf0266c38363e96cea1ef97eebe15365d81..bf0006e1a266cc3b1271bf775129caf67edb9639 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderDefault: Codable {
 
     public var stringItem: String = "what"
@@ -25,7 +23,7 @@ public struct TypeHolderDefault: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderDefault: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
index f46c8952e13e4eb39f0f7ea7d6bf5b00357c651f..602a2a6d185a321f96aec3e3b409bd85f7272776 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderExample: Codable {
 
     public var stringItem: String
@@ -25,7 +23,7 @@ public struct TypeHolderExample: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderExample: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/User.swift
index d9c564d2a1fe8d4b16374d2a872ec14b9bc9741b..7d6b24b9e1005e5e78d801d1e35a8864bb1e1c0e 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/User.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/User.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct User: Codable {
 
     public var _id: Int64?
@@ -32,7 +30,7 @@ public struct User: Codable {
         self.userStatus = userStatus
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case username
         case firstName
@@ -43,6 +41,4 @@ public struct User: Codable {
         case userStatus
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
index e1b1ace8b153460ad9ee1066d0d45bf5f27ff152..aa016683503ba8661b79f61a18b7fa0cae4d2b19 100644
--- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
+++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct XmlItem: Codable {
 
     public var attributeString: String?
@@ -73,7 +71,7 @@ public struct XmlItem: Codable {
         self.prefixNsWrappedArray = prefixNsWrappedArray
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case attributeString = "attribute_string"
         case attributeNumber = "attribute_number"
         case attributeInteger = "attribute_integer"
@@ -105,6 +103,4 @@ public struct XmlItem: Codable {
         case prefixNsWrappedArray = "prefix_ns_wrapped_array"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/objcCompatible/README.md b/samples/client/petstore/swift4/objcCompatible/README.md
index ac131d8fcd5e0f4e812090a37125790ba370ce28..8c1afe63fc7cbcae71710dd79092776bf9c72848 100644
--- a/samples/client/petstore/swift4/objcCompatible/README.md
+++ b/samples/client/petstore/swift4/objcCompatible/README.md
@@ -80,10 +80,12 @@ Class | Method | HTTP request | Description
  - [ArrayTest](docs/ArrayTest.md)
  - [Capitalization](docs/Capitalization.md)
  - [Cat](docs/Cat.md)
+ - [CatAllOf](docs/CatAllOf.md)
  - [Category](docs/Category.md)
  - [ClassModel](docs/ClassModel.md)
  - [Client](docs/Client.md)
  - [Dog](docs/Dog.md)
+ - [DogAllOf](docs/DogAllOf.md)
  - [EnumArrays](docs/EnumArrays.md)
  - [EnumClass](docs/EnumClass.md)
  - [EnumTest](docs/EnumTest.md)
diff --git a/samples/client/petstore/swift4/objcCompatible/docs/CatAllOf.md b/samples/client/petstore/swift4/objcCompatible/docs/CatAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..79789be61c01631cd56d3925bd31a17533bcbf88
--- /dev/null
+++ b/samples/client/petstore/swift4/objcCompatible/docs/CatAllOf.md
@@ -0,0 +1,10 @@
+# CatAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**declawed** | **Bool** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/objcCompatible/docs/DogAllOf.md b/samples/client/petstore/swift4/objcCompatible/docs/DogAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..9302ef52e938a092420c1a71707d79ca92464fb2
--- /dev/null
+++ b/samples/client/petstore/swift4/objcCompatible/docs/DogAllOf.md
@@ -0,0 +1,10 @@
+# DogAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**breed** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/objcCompatible/docs/UserAPI.md b/samples/client/petstore/swift4/objcCompatible/docs/UserAPI.md
index 6a8e9dd372d33cdede65cede7135d8a3a0a5ba79..18e233420ab3aafbd83dfda5d012bcf7da096cad 100644
--- a/samples/client/petstore/swift4/objcCompatible/docs/UserAPI.md
+++ b/samples/client/petstore/swift4/objcCompatible/docs/UserAPI.md
@@ -95,7 +95,7 @@ UserAPI.createUsersWithArrayInput(body: body) { (response, error) in
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
@@ -143,7 +143,7 @@ UserAPI.createUsersWithListInput(body: body) { (response, error) in
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
diff --git a/samples/client/petstore/swift4/objcCompatible/project.yml b/samples/client/petstore/swift4/objcCompatible/project.yml
new file mode 100644
index 0000000000000000000000000000000000000000..148b42517be93c052b823c18242dc38b19fd687b
--- /dev/null
+++ b/samples/client/petstore/swift4/objcCompatible/project.yml
@@ -0,0 +1,15 @@
+name: PetstoreClient
+targets:
+  PetstoreClient:
+    type: framework
+    platform: iOS
+    deploymentTarget: "10.0"
+    sources: [PetstoreClient]
+    info:
+      path: ./Info.plist
+      version: 1.0.0
+    settings:
+      APPLICATION_EXTENSION_API_ONLY: true
+    scheme: {}
+    dependencies:
+    - carthage: Alamofire
diff --git a/samples/client/petstore/swift4/promisekit/.openapi-generator/VERSION b/samples/client/petstore/swift4/promisekit/.openapi-generator/VERSION
index afa6365606414bf56f925745712166af5b4a2be0..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/swift4/promisekit/.openapi-generator/VERSION
+++ b/samples/client/petstore/swift4/promisekit/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.0-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/swift4/promisekit/Info.plist b/samples/client/petstore/swift4/promisekit/Info.plist
new file mode 100644
index 0000000000000000000000000000000000000000..323e5ecfc420ad71d4ea6890405ca4af8a03bafd
--- /dev/null
+++ b/samples/client/petstore/swift4/promisekit/Info.plist
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>$(DEVELOPMENT_LANGUAGE)</string>
+	<key>CFBundleExecutable</key>
+	<string>$(EXECUTABLE_NAME)</string>
+	<key>CFBundleIdentifier</key>
+	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>$(PRODUCT_NAME)</string>
+	<key>CFBundlePackageType</key>
+	<string>FMWK</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleVersion</key>
+	<string>1</string>
+</dict>
+</plist>
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/promisekit/PetstoreClient.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000000000000000000000000000000000..89e8b9f2389938b53a793fbd8ae06572ecd763df
--- /dev/null
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient.xcodeproj/project.pbxproj
@@ -0,0 +1,577 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 50;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */; };
+		0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */; };
+		08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */; };
+		1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */; };
+		122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */; };
+		12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */; };
+		12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */; };
+		16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */; };
+		18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 212AA914B7F1793A4E32C119370FB05F /* Cat.swift */; };
+		196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */; };
+		271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */; };
+		293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */; };
+		297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */; };
+		2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */; };
+		2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */; };
+		3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */; };
+		36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */; };
+		3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */; };
+		41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */; };
+		42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */; };
+		491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */; };
+		4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */; };
+		58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */; };
+		59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */; };
+		59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */; };
+		5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */; };
+		655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */; };
+		6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */; };
+		6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */; };
+		7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */; };
+		82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */; };
+		83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */; };
+		92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = A913A57E72D723632E9A718FF4525C81 /* Client.swift */; };
+		97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */; };
+		A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */; };
+		A196B597ADCA20BEC280660B57FF7333 /* PromiseKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A586582C92491DF9C12D27E2CB7F0695 /* PromiseKit.framework */; };
+		A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */; };
+		A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */; };
+		AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */; };
+		B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */; };
+		BB02FDCF1B2B0E457E1C2BF39FBB599D /* XmlItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */; };
+		BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */; };
+		C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */; };
+		C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A6070F581E611FF44AFD40A4315C49A /* List.swift */; };
+		C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */; };
+		C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */; };
+		D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */; };
+		D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */; };
+		DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */; };
+		DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */; };
+		DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */; };
+		DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */; };
+		E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 386FD590658E90509C121118F057604D /* SpecialModelName.swift */; };
+		E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */; };
+		F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8699F7966F748ED026A6FB4CF550442B /* Models.swift */; };
+		F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = C81447828475F76C5CF4F08AA65292F7 /* Return.swift */; };
+		FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */; };
+		FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+		02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodableHelper.swift; sourceTree = "<group>"; };
+		10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = "<group>"; };
+		164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderExample.swift; sourceTree = "<group>"; };
+		212AA914B7F1793A4E32C119370FB05F /* Cat.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = "<group>"; };
+		27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = "<group>"; };
+		28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = "<group>"; };
+		3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = "<group>"; };
+		35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodingHelper.swift; sourceTree = "<group>"; };
+		37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIs.swift; sourceTree = "<group>"; };
+		386FD590658E90509C121118F057604D /* SpecialModelName.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = "<group>"; };
+		3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = "<group>"; };
+		396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CatAllOf.swift; sourceTree = "<group>"; };
+		3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = "<group>"; };
+		47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = "<group>"; };
+		4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = "<group>"; };
+		4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = "<group>"; };
+		4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = "<group>"; };
+		5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = "<group>"; };
+		6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = "<group>"; };
+		6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = "<group>"; };
+		6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = "<group>"; };
+		7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = "<group>"; };
+		7A6070F581E611FF44AFD40A4315C49A /* List.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = "<group>"; };
+		7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = "<group>"; };
+		82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = "<group>"; };
+		84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlamofireImplementations.swift; sourceTree = "<group>"; };
+		8699F7966F748ED026A6FB4CF550442B /* Models.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Models.swift; sourceTree = "<group>"; };
+		897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIHelper.swift; sourceTree = "<group>"; };
+		8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = "<group>"; };
+		95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = "<group>"; };
+		9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodableEncoding.swift; sourceTree = "<group>"; };
+		9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = "<group>"; };
+		9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = "<group>"; };
+		A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DogAllOf.swift; sourceTree = "<group>"; };
+		A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XmlItem.swift; sourceTree = "<group>"; };
+		A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Alamofire.framework; sourceTree = "<group>"; };
+		A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = "<group>"; };
+		A586582C92491DF9C12D27E2CB7F0695 /* PromiseKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = PromiseKit.framework; sourceTree = "<group>"; };
+		A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = "<group>"; };
+		A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = "<group>"; };
+		A913A57E72D723632E9A718FF4525C81 /* Client.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = "<group>"; };
+		B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = "<group>"; };
+		B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = "<group>"; };
+		B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = "<group>"; };
+		B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = "<group>"; };
+		C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = "<group>"; };
+		C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = "<group>"; };
+		C81447828475F76C5CF4F08AA65292F7 /* Return.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = "<group>"; };
+		E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = "<group>"; };
+		EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderDefault.swift; sourceTree = "<group>"; };
+		ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = "<group>"; };
+		F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = "<group>"; };
+		F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = "<group>"; };
+		FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */,
+				A196B597ADCA20BEC280660B57FF7333 /* PromiseKit.framework in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				7861EE241895128F64DD787367B3022D /* Carthage */,
+			);
+			name = Frameworks;
+			sourceTree = "<group>";
+		};
+		4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */ = {
+			isa = PBXGroup;
+			children = (
+				396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */,
+				95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */,
+				8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */,
+				A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */,
+				7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */,
+				B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */,
+				F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */,
+				A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */,
+				212AA914B7F1793A4E32C119370FB05F /* Cat.swift */,
+				3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */,
+				6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */,
+				3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */,
+				A913A57E72D723632E9A718FF4525C81 /* Client.swift */,
+				C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */,
+				A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */,
+				10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */,
+				4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */,
+				FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */,
+				3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */,
+				4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */,
+				3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */,
+				4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */,
+				7A6070F581E611FF44AFD40A4315C49A /* List.swift */,
+				7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */,
+				9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */,
+				82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */,
+				5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */,
+				B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */,
+				27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */,
+				F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */,
+				C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */,
+				ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */,
+				6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */,
+				C81447828475F76C5CF4F08AA65292F7 /* Return.swift */,
+				386FD590658E90509C121118F057604D /* SpecialModelName.swift */,
+				47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */,
+				B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */,
+				EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */,
+				19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */,
+				E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */,
+				A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */,
+			);
+			path = Models;
+			sourceTree = "<group>";
+		};
+		5FBA6AE5F64CD737F88B4565AC3CCD3B = {
+			isa = PBXGroup;
+			children = (
+				9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */,
+				1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */,
+				857F0DEA1890CE66D6DAD556C55821A6 /* Products */,
+			);
+			sourceTree = "<group>";
+		};
+		67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */ = {
+			isa = PBXGroup;
+			children = (
+				84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */,
+				897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */,
+				37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */,
+				02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */,
+				28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */,
+				B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */,
+				9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */,
+				35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */,
+				8699F7966F748ED026A6FB4CF550442B /* Models.swift */,
+				F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */,
+				4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */,
+			);
+			path = OpenAPIs;
+			sourceTree = "<group>";
+		};
+		7861EE241895128F64DD787367B3022D /* Carthage */ = {
+			isa = PBXGroup;
+			children = (
+				A012205B41CB71A62B86EECDEAFB0990 /* iOS */,
+			);
+			name = Carthage;
+			path = Carthage/Build;
+			sourceTree = "<group>";
+		};
+		857F0DEA1890CE66D6DAD556C55821A6 /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+		9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */ = {
+			isa = PBXGroup;
+			children = (
+				EF4C81BDD734856ED5023B777D35098B /* Classes */,
+			);
+			path = PetstoreClient;
+			sourceTree = "<group>";
+		};
+		A012205B41CB71A62B86EECDEAFB0990 /* iOS */ = {
+			isa = PBXGroup;
+			children = (
+				A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */,
+				A586582C92491DF9C12D27E2CB7F0695 /* PromiseKit.framework */,
+			);
+			path = iOS;
+			sourceTree = "<group>";
+		};
+		EF4C81BDD734856ED5023B777D35098B /* Classes */ = {
+			isa = PBXGroup;
+			children = (
+				67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */,
+			);
+			path = Classes;
+			sourceTree = "<group>";
+		};
+		F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */ = {
+			isa = PBXGroup;
+			children = (
+				9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */,
+				6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */,
+				B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */,
+				9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */,
+				A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */,
+				7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */,
+			);
+			path = APIs;
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+		C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */;
+			buildPhases = (
+				E539708354CE60FE486F81EDE56D13C8 /* Sources */,
+				D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = PetstoreClient;
+			productName = PetstoreClient;
+			productReference = 164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */;
+			productType = "com.apple.product-type.framework";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		E7D276EE2369D8C455513C2E05F9AED0 /* Project object */ = {
+			isa = PBXProject;
+			attributes = {
+				LastUpgradeCheck = 1000;
+			};
+			buildConfigurationList = ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */;
+			compatibilityVersion = "Xcode 9.3";
+			developmentRegion = en;
+			hasScannedForEncodings = 0;
+			knownRegions = (
+				en,
+			);
+			mainGroup = 5FBA6AE5F64CD737F88B4565AC3CCD3B;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+				C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXSourcesBuildPhase section */
+		E539708354CE60FE486F81EDE56D13C8 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */,
+				0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */,
+				12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */,
+				58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */,
+				02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */,
+				DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */,
+				83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */,
+				97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */,
+				3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */,
+				A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */,
+				C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */,
+				7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */,
+				18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */,
+				41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */,
+				42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */,
+				5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */,
+				92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */,
+				6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */,
+				DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */,
+				D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */,
+				271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */,
+				A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */,
+				59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */,
+				08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */,
+				C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */,
+				297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */,
+				A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */,
+				FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */,
+				491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */,
+				36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */,
+				DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */,
+				16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */,
+				12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */,
+				C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */,
+				655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */,
+				D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */,
+				2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */,
+				F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */,
+				C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */,
+				AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */,
+				59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */,
+				82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */,
+				1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */,
+				B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */,
+				3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */,
+				293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */,
+				F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */,
+				E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */,
+				122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */,
+				196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */,
+				E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */,
+				6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */,
+				FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */,
+				BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */,
+				DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */,
+				BB02FDCF1B2B0E457E1C2BF39FBB599D /* XmlItem.swift in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+		3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Release;
+		};
+		A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_TESTABILITY = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"$(inherited)",
+					"DEBUG=1",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+				SWIFT_VERSION = 4.2;
+			};
+			name = Debug;
+		};
+		DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Debug;
+		};
+		F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
+				SWIFT_VERSION = 4.2;
+				VALIDATE_PRODUCT = YES;
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */,
+				3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = "";
+		};
+		ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */,
+				F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Debug;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = E7D276EE2369D8C455513C2E05F9AED0 /* Project object */;
+}
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/samples/client/petstore/swift4/promisekit/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000000000000000000000000000000000000..919434a6254f0e9651f402737811be6634a03e9c
--- /dev/null
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:">
+   </FileRef>
+</Workspace>
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme b/samples/client/petstore/swift4/promisekit/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
new file mode 100644
index 0000000000000000000000000000000000000000..7802e379453b951ec5f78c0f1c296a38b2ee90e4
--- /dev/null
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "1000"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+               BuildableName = "PetstoreClient.framework"
+               BlueprintName = "PetstoreClient"
+               ReferencedContainer = "container:PetstoreClient.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <CommandLineArguments>
+      </CommandLineArguments>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIHelper.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
index d94614b34fc71f50736db77e0d046bb2d356b30e..75dea24395752b328facec8e593fcac7ea470217 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
@@ -7,7 +7,7 @@
 import Foundation
 
 public struct APIHelper {
-    public static func rejectNil(_ source: [String:Any?]) -> [String:Any]? {
+    public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? {
         let destination = source.reduce(into: [String: Any]()) { (result, item) in
             if let value = item.value {
                 result[item.key] = value
@@ -20,17 +20,17 @@ public struct APIHelper {
         return destination
     }
 
-    public static func rejectNilHeaders(_ source: [String:Any?]) -> [String:String] {
+    public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] {
         return source.reduce(into: [String: String]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
-                result[item.key] = collection.filter({ $0 != nil }).map{ "\($0!)" }.joined(separator: ",")
+                result[item.key] = collection.filter({ $0 != nil }).map { "\($0!)" }.joined(separator: ",")
             } else if let value: Any = item.value {
                 result[item.key] = "\(value)"
             }
         }
     }
 
-    public static func convertBoolToString(_ source: [String: Any]?) -> [String:Any]? {
+    public static func convertBoolToString(_ source: [String: Any]?) -> [String: Any]? {
         guard let source = source else {
             return nil
         }
@@ -52,7 +52,7 @@ public struct APIHelper {
         return source
     }
 
-    public static func mapValuesToQueryItems(_ source: [String:Any?]) -> [URLQueryItem]? {
+    public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? {
         let destination = source.filter({ $0.value != nil}).reduce(into: [URLQueryItem]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
                 let value = collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",")
@@ -68,4 +68,3 @@ public struct APIHelper {
         return destination
     }
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs.swift
index 2890bffa2747d155c7c4c021610132c197ef2c83..9e4312f685de410bc328b2da41601768b1920229 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs.swift
@@ -9,22 +9,22 @@ import Foundation
 open class PetstoreClientAPI {
     public static var basePath = "http://petstore.swagger.io:80/v2"
     public static var credential: URLCredential?
-    public static var customHeaders: [String:String] = [:]
+    public static var customHeaders: [String: String] = [:]
     public static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory()
 }
 
 open class RequestBuilder<T> {
     var credential: URLCredential?
-    var headers: [String:String]
-    public let parameters: [String:Any]?
+    var headers: [String: String]
+    public let parameters: [String: Any]?
     public let isBody: Bool
     public let method: String
     public let URLString: String
 
     /// Optional block to obtain a reference to the request's progress instance when available.
-    public var onProgressReady: ((Progress) -> ())?
+    public var onProgressReady: ((Progress) -> Void)?
 
-    required public init(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         self.method = method
         self.URLString = URLString
         self.parameters = parameters
@@ -34,7 +34,7 @@ open class RequestBuilder<T> {
         addHeaders(PetstoreClientAPI.customHeaders)
     }
 
-    open func addHeaders(_ aHeaders:[String:String]) {
+    open func addHeaders(_ aHeaders: [String: String]) {
         for (header, value) in aHeaders {
             headers[header] = value
         }
@@ -57,5 +57,5 @@ open class RequestBuilder<T> {
 
 public protocol RequestBuilderFactory {
     func getNonDecodableBuilder<T>() -> RequestBuilder<T>.Type
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type
 }
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
index 18204a2a7547629581c6abc1f240fed1419ecd6e..2a2e7ab048a84fa6fc1e5bde6727e27ad6129e4d 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import PromiseKit
 
-
-
 open class AnotherFakeAPI {
     /**
      To test special tags
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
index ed3c187e7279a3b4f4c98af50171e2c7f1454cba..3fdda64aa25893d0e82a03e72cf9a943ca19417c 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import PromiseKit
 
-
-
 open class FakeAPI {
     /**
 
@@ -201,7 +199,7 @@ open class FakeAPI {
      - parameter body: (body)  
      - returns: Promise<Void>
      */
-    open class func testBodyWithQueryParams( query: String,  body: User) -> Promise<Void> {
+    open class func testBodyWithQueryParams( query: String, body: User) -> Promise<Void> {
         let deferred = Promise<Void>.pending()
         testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (response, error) -> Void in
             if let error = error {
@@ -292,7 +290,7 @@ open class FakeAPI {
      - parameter callback: (form) None (optional)
      - returns: Promise<Void>
      */
-    open class func testEndpointParameters( number: Double,  double: Double,  patternWithoutDelimiter: String,  byte: Data,  integer: Int? = nil,  int32: Int? = nil,  int64: Int64? = nil,  float: Float? = nil,  string: String? = nil,  binary: URL? = nil,  date: Date? = nil,  dateTime: Date? = nil,  password: String? = nil,  callback: String? = nil) -> Promise<Void> {
+    open class func testEndpointParameters( number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil) -> Promise<Void> {
         let deferred = Promise<Void>.pending()
         testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute { (response, error) -> Void in
             if let error = error {
@@ -330,7 +328,7 @@ open class FakeAPI {
     open class func testEndpointParametersWithRequestBuilder(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "integer": integer?.encodeToJSON(),
             "int32": int32?.encodeToJSON(),
             "int64": int64?.encodeToJSON(),
@@ -349,7 +347,7 @@ open class FakeAPI {
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -437,7 +435,7 @@ open class FakeAPI {
      - parameter enumFormString: (form) Form parameter enum test (string) (optional, default to .-efg)
      - returns: Promise<Void>
      */
-    open class func testEnumParameters( enumHeaderStringArray: [String]? = nil,  enumHeaderString: EnumHeaderString_testEnumParameters? = nil,  enumQueryStringArray: [String]? = nil,  enumQueryString: EnumQueryString_testEnumParameters? = nil,  enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil,  enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil,  enumFormStringArray: [String]? = nil,  enumFormString: EnumFormString_testEnumParameters? = nil) -> Promise<Void> {
+    open class func testEnumParameters( enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil) -> Promise<Void> {
         let deferred = Promise<Void>.pending()
         testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (response, error) -> Void in
             if let error = error {
@@ -466,19 +464,19 @@ open class FakeAPI {
     open class func testEnumParametersWithRequestBuilder(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "enum_form_string_array": enumFormStringArray,
             "enum_form_string": enumFormString?.rawValue
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "enum_query_string_array": enumQueryStringArray, 
-            "enum_query_string": enumQueryString?.rawValue, 
-            "enum_query_integer": enumQueryInteger?.rawValue, 
+            "enum_query_string_array": enumQueryStringArray,
+            "enum_query_string": enumQueryString?.rawValue,
+            "enum_query_integer": enumQueryInteger?.rawValue,
             "enum_query_double": enumQueryDouble?.rawValue
         ])
         let nillableHeaders: [String: Any?] = [
@@ -503,7 +501,7 @@ open class FakeAPI {
      - parameter int64Group: (query) Integer in group parameters (optional)
      - returns: Promise<Void>
      */
-    open class func testGroupParameters( requiredStringGroup: Int,  requiredBooleanGroup: Bool,  requiredInt64Group: Int64,  stringGroup: Int? = nil,  booleanGroup: Bool? = nil,  int64Group: Int64? = nil) -> Promise<Void> {
+    open class func testGroupParameters( requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil) -> Promise<Void> {
         let deferred = Promise<Void>.pending()
         testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (response, error) -> Void in
             if let error = error {
@@ -530,13 +528,13 @@ open class FakeAPI {
     open class func testGroupParametersWithRequestBuilder(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "required_string_group": requiredStringGroup.encodeToJSON(), 
-            "required_int64_group": requiredInt64Group.encodeToJSON(), 
-            "string_group": stringGroup?.encodeToJSON(), 
+            "required_string_group": requiredStringGroup.encodeToJSON(),
+            "required_int64_group": requiredInt64Group.encodeToJSON(),
+            "string_group": stringGroup?.encodeToJSON(),
             "int64_group": int64Group?.encodeToJSON()
         ])
         let nillableHeaders: [String: Any?] = [
@@ -556,7 +554,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - returns: Promise<Void>
      */
-    open class func testInlineAdditionalProperties( param: [String:String]) -> Promise<Void> {
+    open class func testInlineAdditionalProperties( param: [String: String]) -> Promise<Void> {
         let deferred = Promise<Void>.pending()
         testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in
             if let error = error {
@@ -574,7 +572,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - returns: RequestBuilder<Void> 
      */
-    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String:String]) -> RequestBuilder<Void> {
+    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String: String]) -> RequestBuilder<Void> {
         let path = "/fake/inline-additionalProperties"
         let URLString = PetstoreClientAPI.basePath + path
         let parameters = JSONEncodingHelper.encodingParameters(forEncodableObject: param)
@@ -593,7 +591,7 @@ open class FakeAPI {
      - parameter param2: (form) field2 
      - returns: Promise<Void>
      */
-    open class func testJsonFormData( param: String,  param2: String) -> Promise<Void> {
+    open class func testJsonFormData( param: String, param2: String) -> Promise<Void> {
         let deferred = Promise<Void>.pending()
         testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in
             if let error = error {
@@ -615,14 +613,14 @@ open class FakeAPI {
     open class func testJsonFormDataWithRequestBuilder(param: String, param2: String) -> RequestBuilder<Void> {
         let path = "/fake/jsonFormData"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "param": param,
             "param2": param2
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
index 51e1cd244bb0acd59d7bf645a590d794f5ed6bd2..a6bb118c58231b91e7a9932329a2cfd9f642ea75 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import PromiseKit
 
-
-
 open class FakeClassnameTags123API {
     /**
      To test class name in snake case
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
index 29fc9ba64f9e80b5e6809c9ae81dc22dbce98138..a9c64e897b6e95ef64b8b04c9154878d5f271aa7 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import PromiseKit
 
-
-
 open class PetAPI {
     /**
      Add a new pet to the store
@@ -58,7 +56,7 @@ open class PetAPI {
      - parameter apiKey: (header)  (optional)
      - returns: Promise<Void>
      */
-    open class func deletePet( petId: Int64,  apiKey: String? = nil) -> Promise<Void> {
+    open class func deletePet( petId: Int64, apiKey: String? = nil) -> Promise<Void> {
         let deferred = Promise<Void>.pending()
         deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in
             if let error = error {
@@ -86,8 +84,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
         let nillableHeaders: [String: Any?] = [
             "api_key": apiKey
@@ -141,8 +139,8 @@ open class PetAPI {
     open class func findPetsByStatusWithRequestBuilder(status: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByStatus"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "status": status
@@ -186,8 +184,8 @@ open class PetAPI {
     open class func findPetsByTagsWithRequestBuilder(tags: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByTags"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "tags": tags
@@ -234,8 +232,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Pet>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -290,7 +288,7 @@ open class PetAPI {
      - parameter status: (form) Updated status of the pet (optional)
      - returns: Promise<Void>
      */
-    open class func updatePetWithForm( petId: Int64,  name: String? = nil,  status: String? = nil) -> Promise<Void> {
+    open class func updatePetWithForm( petId: Int64, name: String? = nil, status: String? = nil) -> Promise<Void> {
         let deferred = Promise<Void>.pending()
         updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in
             if let error = error {
@@ -319,14 +317,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "name": name,
             "status": status
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -342,7 +340,7 @@ open class PetAPI {
      - parameter file: (form) file to upload (optional)
      - returns: Promise<ApiResponse>
      */
-    open class func uploadFile( petId: Int64,  additionalMetadata: String? = nil,  file: URL? = nil) -> Promise<ApiResponse> {
+    open class func uploadFile( petId: Int64, additionalMetadata: String? = nil, file: URL? = nil) -> Promise<ApiResponse> {
         let deferred = Promise<ApiResponse>.pending()
         uploadFileWithRequestBuilder(petId: petId, additionalMetadata: additionalMetadata, file: file).execute { (response, error) -> Void in
             if let error = error {
@@ -373,14 +371,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "file": file
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -396,7 +394,7 @@ open class PetAPI {
      - parameter additionalMetadata: (form) Additional data to pass to server (optional)
      - returns: Promise<ApiResponse>
      */
-    open class func uploadFileWithRequiredFile( petId: Int64,  requiredFile: URL,  additionalMetadata: String? = nil) -> Promise<ApiResponse> {
+    open class func uploadFileWithRequiredFile( petId: Int64, requiredFile: URL, additionalMetadata: String? = nil) -> Promise<ApiResponse> {
         let deferred = Promise<ApiResponse>.pending()
         uploadFileWithRequiredFileWithRequestBuilder(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata).execute { (response, error) -> Void in
             if let error = error {
@@ -427,14 +425,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "requiredFile": requiredFile
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
index 2461befb0a238ac08d73ba80a985f5a6a7bb8f1d..502f44af60a63378a0f31b7dbd94a14c5396055e 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import PromiseKit
 
-
-
 open class StoreAPI {
     /**
      Delete purchase order by ID
@@ -43,8 +41,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -57,8 +55,8 @@ open class StoreAPI {
      
      - returns: Promise<[String:Int]>
      */
-    open class func getInventory() -> Promise<[String:Int]> {
-        let deferred = Promise<[String:Int]>.pending()
+    open class func getInventory() -> Promise<[String: Int]> {
+        let deferred = Promise<[String: Int]>.pending()
         getInventoryWithRequestBuilder().execute { (response, error) -> Void in
             if let error = error {
                 deferred.reject(error)
@@ -80,14 +78,14 @@ open class StoreAPI {
        - name: api_key
      - returns: RequestBuilder<[String:Int]> 
      */
-    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String:Int]> {
+    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String: Int]> {
         let path = "/store/inventory"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
-        let requestBuilder: RequestBuilder<[String:Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+        let requestBuilder: RequestBuilder<[String: Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
 
         return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false)
     }
@@ -125,8 +123,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Order>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
index a306c14e590845998a1a0dc51e47b1f8f6b6fc40..793c47447ea2198df864522bca737341213b7003 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import PromiseKit
 
-
-
 open class UserAPI {
     /**
      Create user
@@ -152,8 +150,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -193,8 +191,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<User>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -209,7 +207,7 @@ open class UserAPI {
      - parameter password: (query) The password for login in clear text 
      - returns: Promise<String>
      */
-    open class func loginUser( username: String,  password: String) -> Promise<String> {
+    open class func loginUser( username: String, password: String) -> Promise<String> {
         let deferred = Promise<String>.pending()
         loginUserWithRequestBuilder(username: username, password: password).execute { (response, error) -> Void in
             if let error = error {
@@ -234,11 +232,11 @@ open class UserAPI {
     open class func loginUserWithRequestBuilder(username: String, password: String) -> RequestBuilder<String> {
         let path = "/user/login"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "username": username, 
+            "username": username,
             "password": password
         ])
 
@@ -272,8 +270,8 @@ open class UserAPI {
     open class func logoutUserWithRequestBuilder() -> RequestBuilder<Void> {
         let path = "/user/logout"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -288,7 +286,7 @@ open class UserAPI {
      - parameter body: (body) Updated user object 
      - returns: Promise<Void>
      */
-    open class func updateUser( username: String,  body: User) -> Promise<Void> {
+    open class func updateUser( username: String, body: User) -> Promise<Void> {
         let deferred = Promise<Void>.pending()
         updateUserWithRequestBuilder(username: username, body: body).execute { (response, error) -> Void in
             if let error = error {
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
index dac40e9a31cfbf7c6194a337ddd9ab7cafb16b35..04ad02a5ce88e02b302bcdb3f9b02522a5509b5a 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
@@ -12,7 +12,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
         return AlamofireRequestBuilder<T>.self
     }
 
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type {
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type {
         return AlamofireDecodableRequestBuilder<T>.self
     }
 }
@@ -50,7 +50,7 @@ private struct SynchronizedDictionary<K: Hashable, V> {
 private var managerStore = SynchronizedDictionary<String, Alamofire.SessionManager>()
 
 open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
-    required public init(method: String, URLString: String, parameters: [String : Any]?, isBody: Bool, headers: [String : String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         super.init(method: method, URLString: URLString, parameters: parameters, isBody: isBody, headers: headers)
     }
 
@@ -88,17 +88,17 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
      May be overridden by a subclass if you want to control the request
      configuration (e.g. to override the cache policy).
      */
-    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String:String]) -> DataRequest {
+    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) -> DataRequest {
         return manager.request(URLString, method: method, parameters: parameters, encoding: encoding, headers: headers)
     }
 
     override open func execute(_ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
-        let managerId:String = UUID().uuidString
+        let managerId: String = UUID().uuidString
         // Create a new manager for each request to customize its request header
         let manager = createSessionManager()
         managerStore[managerId] = manager
 
-        let encoding:ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
+        let encoding: ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
 
         let xMethod = Alamofire.HTTPMethod(rawValue: method)
         let fileKeys = parameters == nil ? [] : parameters!.filter { $1 is NSURL }
@@ -111,8 +111,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
                     case let fileURL as URL:
                         if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
                             mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
-                        }
-                        else {
+                        } else {
                             mpForm.append(fileURL, withName: k)
                         }
                     case let string as String:
@@ -276,7 +275,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
         return httpHeaders
     }
 
-    fileprivate func getFileName(fromContentDisposition contentDisposition : String?) -> String? {
+    fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? {
 
         guard let contentDisposition = contentDisposition else {
             return nil
@@ -284,7 +283,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
         let items = contentDisposition.components(separatedBy: ";")
 
-        var filename : String? = nil
+        var filename: String? = nil
 
         for contentItem in items {
 
@@ -304,7 +303,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getPath(from url : URL) throws -> String {
+    fileprivate func getPath(from url: URL) throws -> String {
 
         guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else {
             throw DownloadException.requestMissingPath
@@ -318,7 +317,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getURL(from urlRequest : URLRequest) throws -> URL {
+    fileprivate func getURL(from urlRequest: URLRequest) throws -> URL {
 
         guard let url = urlRequest.url else {
             throw DownloadException.requestMissingURL
@@ -329,7 +328,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
 }
 
-fileprivate enum DownloadException : Error {
+private enum DownloadException: Error {
     case responseDataMissing
     case responseFailed
     case requestMissing
@@ -344,7 +343,7 @@ public enum AlamofireDecodableRequestBuilderError: Error {
     case generalError(Error)
 }
 
-open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilder<T> {
+open class AlamofireDecodableRequestBuilder<T: Decodable>: AlamofireRequestBuilder<T> {
 
     override fileprivate func processRequest(request: DataRequest, _ managerId: String, _ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
         if let credential = self.credential {
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
index 584de8c3d57a78a248749874fabd8245bf33f9fc..111d5a3a8cbe9afe5289cf58aa577d7c8f761a4a 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
@@ -13,7 +13,7 @@ open class CodableHelper {
 
     public static var dateformatter: DateFormatter?
 
-    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T : Decodable {
+    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable {
         var returnedDecodable: T? = nil
         var returnedError: Error? = nil
 
@@ -39,7 +39,7 @@ open class CodableHelper {
         return (returnedDecodable, returnedError)
     }
 
-    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T : Encodable {
+    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable {
         var returnedData: Data?
         var returnedError: Error? = nil
 
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Configuration.swift
index 516590da5d9e34183fdca8fef2901c7b53ab763b..e1ecb39726e7a8b435a6e688d95ddec9693fc3bc 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Configuration.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Configuration.swift
@@ -7,9 +7,9 @@
 import Foundation
 
 open class Configuration {
-	
+
 	// This value is used to configure the date formatter that is used to serialize dates into JSON format. 
 	// You must set it prior to encoding any dates, and it will only be read once. 
     public static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
-    
-}
\ No newline at end of file
+
+}
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Extensions.swift
index 97a90f9af490d30becbfd9291522bd2e9cba304b..d6202ace079fda9bc44f2ed43309f66da7d137ea 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Extensions.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Extensions.swift
@@ -113,24 +113,24 @@ extension String: CodingKey {
 
 extension KeyedEncodingContainerProtocol {
 
-    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T: Encodable {
         var arrayContainer = nestedUnkeyedContainer(forKey: key)
         try arrayContainer.encode(contentsOf: values)
     }
 
-    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable {
         if let values = values {
             try encodeArray(values, forKey: key)
         }
     }
 
-    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T : Encodable {
+    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T: Encodable {
         for (key, value) in pairs {
             try encode(value, forKey: key)
         }
     }
 
-    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T : Encodable {
+    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T: Encodable {
         if let pairs = pairs {
             try encodeMap(pairs)
         }
@@ -140,7 +140,7 @@ extension KeyedEncodingContainerProtocol {
 
 extension KeyedDecodingContainerProtocol {
 
-    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T : Decodable {
+    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable {
         var tmpArray = [T]()
 
         var nestedContainer = try nestedUnkeyedContainer(forKey: key)
@@ -152,7 +152,7 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T : Decodable {
+    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable {
         var tmpArray: [T]? = nil
 
         if contains(key) {
@@ -162,8 +162,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T : Decodable {
-        var map: [Self.Key : T] = [:]
+    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T: Decodable {
+        var map: [Self.Key: T] = [:]
 
         for key in allKeys {
             if !excludedKeys.contains(key) {
@@ -178,7 +178,7 @@ extension KeyedDecodingContainerProtocol {
 }
 
 extension RequestBuilder {
-    public func execute() -> Promise<Response<T>>  {
+    public func execute() -> Promise<Response<T>> {
         let deferred = Promise<Response<T>>.pending()
         self.execute { (response: Response<T>?, error: Error?) in
             if let response = response {
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
index 70449515842de48fed6aec10ef246b1ad0f89e8b..3e68bb5d4a9b57609b955025cd250046c16fde0f 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
@@ -10,7 +10,7 @@ import Alamofire
 
 open class JSONEncodingHelper {
 
-    open class func encodingParameters<T:Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
+    open class func encodingParameters<T: Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
         var params: Parameters? = nil
 
         // Encode the Encodable object
@@ -39,5 +39,5 @@ open class JSONEncodingHelper {
 
         return params
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models.swift
index 408563890359088c1d97f24053ac1392706457bf..e87ce399c7c8b963ddee0f78a14a70a727751d1a 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models.swift
@@ -10,7 +10,7 @@ protocol JSONEncodable {
     func encodeToJSON() -> Any
 }
 
-public enum ErrorResponse : Error {
+public enum ErrorResponse: Error {
     case error(Int, Data?, Error)
 }
 
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
index 4db39adae84cafaa338f812343439b8f772de667..83a06951ccd657fb6d41f10cf42fc3b347213d3b 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
@@ -7,23 +7,19 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesClass: Codable {
 
-    public var mapString: [String:String]?
-    public var mapMapString: [String:[String:String]]?
+    public var mapString: [String: String]?
+    public var mapMapString: [String: [String: String]]?
 
-    public init(mapString: [String:String]?, mapMapString: [String:[String:String]]?) {
+    public init(mapString: [String: String]?, mapMapString: [String: [String: String]]?) {
         self.mapString = mapString
         self.mapMapString = mapMapString
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapString = "map_string"
         case mapMapString = "map_map_string"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
index 7221a1be099dd896259e2c830046272e01191d98..5ed9f31e2a364d0bf7a25bdf70cecb48af6ab5c4 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Animal: Codable {
 
     public var className: String
@@ -19,6 +17,4 @@ public struct Animal: Codable {
         self.color = color
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
index e7bea63f8ed28132865ea4d3c23eab55666cf4f6..e09b0e9efdc8ca7798114f24aff21f57e8f9fabd 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
@@ -7,5 +7,4 @@
 
 import Foundation
 
-
 public typealias AnimalFarm = [Animal]
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
index a22e9aaebbb06bf18c9bf8a5893ab3e0ece6945d..ec270da8907438877ee5cc303b093ceba3993297 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ApiResponse: Codable {
 
     public var code: Int?
@@ -21,6 +19,4 @@ public struct ApiResponse: Codable {
         self.message = message
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
index 4e5a5ca1445d9faf133bded5a5c89297ea7c5822..3843287630b100a8210c60aff75d4286a44e46a7 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfArrayOfNumberOnly: Codable {
 
     public var arrayArrayNumber: [[Double]]?
@@ -17,10 +15,8 @@ public struct ArrayOfArrayOfNumberOnly: Codable {
         self.arrayArrayNumber = arrayArrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayArrayNumber = "ArrayArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
index 7d059d36833987dc60886960363e11e328dbcee2..f8b198e81f50d4cf237000ed8dae7d47779f8bf4 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfNumberOnly: Codable {
 
     public var arrayNumber: [Double]?
@@ -17,10 +15,8 @@ public struct ArrayOfNumberOnly: Codable {
         self.arrayNumber = arrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayNumber = "ArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
index 9c56fed50c2e79b759cdaceb078c82da316b463d..67f7f7e5151fd3bca131124815c75a0d9f8ade28 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayTest: Codable {
 
     public var arrayOfString: [String]?
@@ -21,12 +19,10 @@ public struct ArrayTest: Codable {
         self.arrayArrayOfModel = arrayArrayOfModel
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayOfString = "array_of_string"
         case arrayArrayOfInteger = "array_array_of_integer"
         case arrayArrayOfModel = "array_array_of_model"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
index 98cda23dac9e7415bc9a1a2cd1dd98fa389d885d..d576b50b1c9c1f2c4c7b719c7800e4da183e49ba 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Capitalization: Codable {
 
     public var smallCamel: String?
@@ -28,7 +26,7 @@ public struct Capitalization: Codable {
         self.ATT_NAME = ATT_NAME
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case smallCamel
         case capitalCamel = "CapitalCamel"
         case smallSnake = "small_Snake"
@@ -37,6 +35,4 @@ public struct Capitalization: Codable {
         case ATT_NAME
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
index a116d964ea84b543abc96dd5273ab37c1fb897ee..7ab887f3113f1dd39f42b1019d8f58d45325f288 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Cat: Codable {
 
     public var className: String
@@ -21,6 +19,4 @@ public struct Cat: Codable {
         self.declawed = declawed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..a51ad0dffab1ba129591056cd816575af0e1ea09
--- /dev/null
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
@@ -0,0 +1,18 @@
+//
+// CatAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct CatAllOf: Codable {
+
+    public var declawed: Bool?
+
+    public init(declawed: Bool?) {
+        self.declawed = declawed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
index e8c489be460402c792f2379641088fae48de315f..eb8f7e5e1974989058473e4492c25c0004f1078c 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Category: Codable {
 
     public var id: Int64?
@@ -19,6 +17,4 @@ public struct Category: Codable {
         self.name = name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
index f673ed127cd8a545ae575acfcdee044768f8ae12..28cb30ce7b4bee968edc3cef6724572481551b91 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model with \&quot;_class\&quot; property */
 
 public struct ClassModel: Codable {
@@ -18,6 +17,4 @@ public struct ClassModel: Codable {
         self._class = _class
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
index 51390b6c4eac28e4df699b05a826a5da163ad0e4..00245ca37280eea9c87184eb0f40fb8bf03b81f2 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Client: Codable {
 
     public var client: String?
@@ -17,6 +15,4 @@ public struct Client: Codable {
         self.client = client
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
index 239ce74dcc2166d80a516ed215f31c1ad52fa930..492c1228008eb782ea0f927f65259ce2c7999d24 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Dog: Codable {
 
     public var className: String
@@ -21,6 +19,4 @@ public struct Dog: Codable {
         self.breed = breed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..7786f8acc5ae7d0de7de7248ef5a94d4d16f0a17
--- /dev/null
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
@@ -0,0 +1,18 @@
+//
+// DogAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct DogAllOf: Codable {
+
+    public var breed: String?
+
+    public init(breed: String?) {
+        self.breed = breed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
index 8713961520e11abb6206697029d5a1fd6be66f00..5034ff0b8c684d21a45c635f4a4b9de56fb3cda1 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumArrays: Codable {
 
     public enum JustSymbol: String, Codable {
@@ -27,11 +25,9 @@ public struct EnumArrays: Codable {
         self.arrayEnum = arrayEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justSymbol = "just_symbol"
         case arrayEnum = "array_enum"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
index 7280a621fec75a24fafa361025faea5190af9f45..3c1dfcac577d12c69319e42cac6ea851bf5dcf28 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum EnumClass: String, Codable {
     case abc = "_abc"
     case efg = "-efg"
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
index 0f546c76a2183956d59c7d5d7bbc345ce58e1d8b..6db9b34d183ba0f97c10db4a22d60e85b5b2a54c 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumTest: Codable {
 
     public enum EnumString: String, Codable {
@@ -43,7 +41,7 @@ public struct EnumTest: Codable {
         self.outerEnum = outerEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case enumString = "enum_string"
         case enumStringRequired = "enum_string_required"
         case enumInteger = "enum_integer"
@@ -51,6 +49,4 @@ public struct EnumTest: Codable {
         case outerEnum
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/File.swift
index c8bd1f19589b528c826d65c456ecf8d9cc974097..ea3520f053dd690ade411e20d80082a7acf57785 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/File.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/File.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Must be named &#x60;File&#x60; for test. */
 
 public struct File: Codable {
@@ -19,6 +18,4 @@ public struct File: Codable {
         self.sourceURI = sourceURI
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
index 64d025068027aa26974661ff1af66421b86d4ab8..532f1457939af300b65f89821673cf1951ec2f0b 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FileSchemaTestClass: Codable {
 
     public var file: File?
@@ -19,6 +17,4 @@ public struct FileSchemaTestClass: Codable {
         self.files = files
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
index faa091b0658c6bb4c9d7cd06d8942eac1c19d382..20bd6d103b3dc87ffa6d7f38b21d957318628930 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FormatTest: Codable {
 
     public var integer: Int?
@@ -41,6 +39,4 @@ public struct FormatTest: Codable {
         self.password = password
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
index 554aee1081aa470de93a2c36c484b6427a67698a..906ddb06fb170e5de30f07754fce3efc4f512ee1 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct HasOnlyReadOnly: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct HasOnlyReadOnly: Codable {
         self.foo = foo
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/List.swift
index 8997340ff4befe18cc8f2754c7ea92620406571c..08d59953873e4cf8f3c5c133c58cf78c4a70f41e 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/List.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/List.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct List: Codable {
 
     public var _123list: String?
@@ -17,10 +15,8 @@ public struct List: Codable {
         self._123list = _123list
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _123list = "123-list"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
index 2d3a45d35a0cb38fad72874cee84e18f4c874014..3a10a7dfcaf6078594c592d7714c5df8d194ba28 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
@@ -7,33 +7,29 @@
 
 import Foundation
 
-
-
 public struct MapTest: Codable {
 
     public enum MapOfEnumString: String, Codable {
         case upper = "UPPER"
         case lower = "lower"
     }
-    public var mapMapOfString: [String:[String:String]]?
-    public var mapOfEnumString: [String:String]?
-    public var directMap: [String:Bool]?
+    public var mapMapOfString: [String: [String: String]]?
+    public var mapOfEnumString: [String: String]?
+    public var directMap: [String: Bool]?
     public var indirectMap: StringBooleanMap?
 
-    public init(mapMapOfString: [String:[String:String]]?, mapOfEnumString: [String:String]?, directMap: [String:Bool]?, indirectMap: StringBooleanMap?) {
+    public init(mapMapOfString: [String: [String: String]]?, mapOfEnumString: [String: String]?, directMap: [String: Bool]?, indirectMap: StringBooleanMap?) {
         self.mapMapOfString = mapMapOfString
         self.mapOfEnumString = mapOfEnumString
         self.directMap = directMap
         self.indirectMap = indirectMap
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapMapOfString = "map_map_of_string"
         case mapOfEnumString = "map_of_enum_string"
         case directMap = "direct_map"
         case indirectMap = "indirect_map"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
index 7116108fd7a3879ef9a8337cdd7ff8d8295a825e..c3deb2f28932f5d0ab338f3da2ac398de24a8822 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
@@ -7,20 +7,16 @@
 
 import Foundation
 
-
-
 public struct MixedPropertiesAndAdditionalPropertiesClass: Codable {
 
     public var uuid: UUID?
     public var dateTime: Date?
-    public var map: [String:Animal]?
+    public var map: [String: Animal]?
 
-    public init(uuid: UUID?, dateTime: Date?, map: [String:Animal]?) {
+    public init(uuid: UUID?, dateTime: Date?, map: [String: Animal]?) {
         self.uuid = uuid
         self.dateTime = dateTime
         self.map = map
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
index fc1d0606b7ba1788451c5add909cf4afb64031c9..7ed6aad907be01122bb19752a3622dc002d026be 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name starting with number */
 
 public struct Model200Response: Codable {
@@ -20,11 +19,9 @@ public struct Model200Response: Codable {
         self._class = _class
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case _class = "class"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
index cc165d767d91a0ac79941c3a1af5208e192941c9..ce9ffe4fb38e525fea73a67c24199de77214cb64 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name same as property name */
 
 public struct Name: Codable {
@@ -24,13 +23,11 @@ public struct Name: Codable {
         self._123number = _123number
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case snakeCase = "snake_case"
         case property
         case _123number = "123Number"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
index e6fb206093aa29bfd8254cffb0026bf04436d925..abd2269e8e76cbfae26cdc3c7582d486a13cfb60 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct NumberOnly: Codable {
 
     public var justNumber: Double?
@@ -17,10 +15,8 @@ public struct NumberOnly: Codable {
         self.justNumber = justNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justNumber = "JustNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
index 83c3b85e6629e9454007ba09246811d282e7c875..a6e1b1d2e5e46e4d5d82399449b966f00b38a59b 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Order: Codable {
 
     public enum Status: String, Codable {
@@ -33,6 +31,4 @@ public struct Order: Codable {
         self.complete = complete
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
index edc4523d9f0090260720b507ff61ac29df79e4ad..49aec001c5dbaeadfc67a0cfa9d2ad79fa3c20fb 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct OuterComposite: Codable {
 
     public var myNumber: Double?
@@ -21,12 +19,10 @@ public struct OuterComposite: Codable {
         self.myBoolean = myBoolean
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case myNumber = "my_number"
         case myString = "my_string"
         case myBoolean = "my_boolean"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
index bd1643d279edd46285735e726922a03f14b4c3e7..9f80fc95ecf0b11f47c6ec2f1e0e5a9a3ef000b0 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum OuterEnum: String, Codable {
     case placed = "placed"
     case approved = "approved"
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
index 5e39abae6c8f55dbfaf300156453a199e86648a2..af60a550bb19ed846146784ae551c2406d31018f 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Pet: Codable {
 
     public enum Status: String, Codable {
@@ -33,6 +31,4 @@ public struct Pet: Codable {
         self.status = status
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
index 48b655a5b0aa2698abf0467fa038429ed3644075..0acd21fd10000317ffc9f96840a49b3dd538d0c7 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ReadOnlyFirst: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct ReadOnlyFirst: Codable {
         self.baz = baz
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
index de4b218999b7fda43e046a32e838f7c5807cd2d8..076082af842f1a3f7c6c1e19bffe9e3aecda4a31 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing reserved words */
 
 public struct Return: Codable {
@@ -18,10 +17,8 @@ public struct Return: Codable {
         self._return = _return
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _return = "return"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
index 213d896ba9882c8f8751f37efa757035910dab55..e79fc45c0e914a027b53334468238a95af0c36dd 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct SpecialModelName: Codable {
 
     public var specialPropertyName: Int64?
@@ -17,10 +15,8 @@ public struct SpecialModelName: Codable {
         self.specialPropertyName = specialPropertyName
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case specialPropertyName = "$special[property.name]"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
index ae15e87d94bba90e3d51a7c4275c06e65fbc4987..3f1237fee477a298b1d99cef8062371e2f101f59 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
@@ -7,12 +7,9 @@
 
 import Foundation
 
-
-
 public struct StringBooleanMap: Codable {
 
-
-    public var additionalProperties: [String:Bool] = [:]
+    public var additionalProperties: [String: Bool] = [:]
 
     public subscript(key: String) -> Bool? {
         get {
@@ -45,7 +42,4 @@ public struct StringBooleanMap: Codable {
         additionalProperties = try container.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
index 32ee33a1a1e0dc98c253db9c2c387b6f39d2eadc..4dd8a9a9f5a0fc547c88401b39caf0f00cddd61d 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Tag: Codable {
 
     public var id: Int64?
@@ -19,6 +17,4 @@ public struct Tag: Codable {
         self.name = name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
index be1afdf0266c38363e96cea1ef97eebe15365d81..bf0006e1a266cc3b1271bf775129caf67edb9639 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderDefault: Codable {
 
     public var stringItem: String = "what"
@@ -25,7 +23,7 @@ public struct TypeHolderDefault: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderDefault: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
index f46c8952e13e4eb39f0f7ea7d6bf5b00357c651f..602a2a6d185a321f96aec3e3b409bd85f7272776 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderExample: Codable {
 
     public var stringItem: String
@@ -25,7 +23,7 @@ public struct TypeHolderExample: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderExample: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/User.swift
index a61b5844201ea15d037424b32518b1c2d259ee4a..79f271ed73564b8af07f2698e649f38062255ce7 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/User.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/User.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct User: Codable {
 
     public var id: Int64?
@@ -32,6 +30,4 @@ public struct User: Codable {
         self.userStatus = userStatus
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
index e1b1ace8b153460ad9ee1066d0d45bf5f27ff152..aa016683503ba8661b79f61a18b7fa0cae4d2b19 100644
--- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
+++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct XmlItem: Codable {
 
     public var attributeString: String?
@@ -73,7 +71,7 @@ public struct XmlItem: Codable {
         self.prefixNsWrappedArray = prefixNsWrappedArray
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case attributeString = "attribute_string"
         case attributeNumber = "attribute_number"
         case attributeInteger = "attribute_integer"
@@ -105,6 +103,4 @@ public struct XmlItem: Codable {
         case prefixNsWrappedArray = "prefix_ns_wrapped_array"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/README.md b/samples/client/petstore/swift4/promisekit/README.md
index 1e7f0a59ea01c4fc07d3b267963d7e87c9191142..0711eb870547e8af6fe7f4c1aa32785f0e89c278 100644
--- a/samples/client/petstore/swift4/promisekit/README.md
+++ b/samples/client/petstore/swift4/promisekit/README.md
@@ -73,10 +73,12 @@ Class | Method | HTTP request | Description
  - [ArrayTest](docs/ArrayTest.md)
  - [Capitalization](docs/Capitalization.md)
  - [Cat](docs/Cat.md)
+ - [CatAllOf](docs/CatAllOf.md)
  - [Category](docs/Category.md)
  - [ClassModel](docs/ClassModel.md)
  - [Client](docs/Client.md)
  - [Dog](docs/Dog.md)
+ - [DogAllOf](docs/DogAllOf.md)
  - [EnumArrays](docs/EnumArrays.md)
  - [EnumClass](docs/EnumClass.md)
  - [EnumTest](docs/EnumTest.md)
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift
index 2fcc05ca0659ce732939876f6aec46e9ee36916e..a411b7749107c95215f1c2058ba4b15492fd1a08 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift
@@ -135,8 +135,7 @@ public func request(
     parameters: Parameters? = nil,
     encoding: ParameterEncoding = URLEncoding.default,
     headers: HTTPHeaders? = nil)
-    -> DataRequest
-{
+    -> DataRequest {
     return SessionManager.default.request(
         url,
         method: method,
@@ -183,8 +182,7 @@ public func download(
     encoding: ParameterEncoding = URLEncoding.default,
     headers: HTTPHeaders? = nil,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(
         url,
         method: method,
@@ -209,8 +207,7 @@ public func download(
 public func download(
     _ urlRequest: URLRequestConvertible,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(urlRequest, to: destination)
 }
 
@@ -239,8 +236,7 @@ public func download(
 public func download(
     resumingWith resumeData: Data,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(resumingWith: resumeData, to: destination)
 }
 
@@ -263,8 +259,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(fileURL, to: url, method: method, headers: headers)
 }
 
@@ -297,8 +292,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(data, to: url, method: method, headers: headers)
 }
 
@@ -331,8 +325,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(stream, to: url, method: method, headers: headers)
 }
 
@@ -379,8 +372,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil,
-    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?)
-{
+    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) {
     return SessionManager.default.upload(
         multipartFormData: multipartFormData,
         usingThreshold: encodingMemoryThreshold,
@@ -416,8 +408,7 @@ public func upload(
     multipartFormData: @escaping (MultipartFormData) -> Void,
     usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold,
     with urlRequest: URLRequestConvertible,
-    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?)
-{
+    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) {
     return SessionManager.default.upload(
         multipartFormData: multipartFormData,
         usingThreshold: encodingMemoryThreshold,
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift
index 057e68b97727c01241e4857c64b1866eae932000..85a0685748e344c1beca21d59480facfeab8820d 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift
@@ -275,8 +275,7 @@ open class MultipartFormData {
             }
 
             bodyContentLength = fileSize.uint64Value
-        }
-        catch {
+        } catch {
             setBodyPartError(withReason: .bodyPartFileSizeQueryFailedWithError(forURL: fileURL, error: error))
             return
         }
@@ -312,8 +311,7 @@ open class MultipartFormData {
         withLength length: UInt64,
         name: String,
         fileName: String,
-        mimeType: String)
-    {
+        mimeType: String) {
         let headers = contentHeaders(withName: name, fileName: fileName, mimeType: mimeType)
         append(stream, withLength: length, headers: headers)
     }
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift
index 3ff2e7fc2774ab233b144cd412be52fa483a2b8c..60bda83d2ff9dc2e0a5f11b9f316164fd1313af3 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift
@@ -146,8 +146,7 @@ open class NetworkReachabilityManager {
         context.info = Unmanaged.passUnretained(self).toOpaque()
 
         let callbackEnabled = SCNetworkReachabilitySetCallback(
-            reachability,
-            { (_, flags, info) in
+            reachability, { (_, flags, info) in
                 let reachability = Unmanaged<NetworkReachabilityManager>.fromOpaque(info!).takeUnretainedValue()
                 reachability.notifyListener(flags)
             },
@@ -216,8 +215,7 @@ extension NetworkReachabilityManager.NetworkReachabilityStatus: Equatable {}
 public func ==(
     lhs: NetworkReachabilityManager.NetworkReachabilityStatus,
     rhs: NetworkReachabilityManager.NetworkReachabilityStatus)
-    -> Bool
-{
+    -> Bool {
     switch (lhs, rhs) {
     case (.unknown, .unknown):
         return true
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift
index 4a54f2dd00b18865475c0afa0aab0d0a8dbea043..344a048cad8b376b9e14de8176630d56523ac8d0 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift
@@ -435,8 +435,7 @@ public struct PropertyListEncoding: ParameterEncoding {
     /// - returns: The new `PropertyListEncoding` instance.
     public init(
         format: PropertyListSerialization.PropertyListFormat = .xml,
-        options: PropertyListSerialization.WriteOptions = 0)
-    {
+        options: PropertyListSerialization.WriteOptions = 0) {
         self.format = format
         self.options = options
     }
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Request.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Request.swift
index ea43411377c0a506befbea6fdee7d18c0f15abc8..18b83a0e73252da6898d7f7fb8031995a80759d3 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Request.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Request.swift
@@ -161,8 +161,7 @@ open class Request {
         user: String,
         password: String,
         persistence: URLCredential.Persistence = .forSession)
-        -> Self
-    {
+        -> Self {
         let credential = URLCredential(user: user, password: password, persistence: persistence)
         return authenticate(usingCredential: credential)
     }
@@ -538,8 +537,7 @@ open class DownloadRequest: Request {
     open class func suggestedDownloadDestination(
         for directory: FileManager.SearchPathDirectory = .documentDirectory,
         in domain: FileManager.SearchPathDomainMask = .userDomainMask)
-        -> DownloadFileDestination
-    {
+        -> DownloadFileDestination {
         return { temporaryURL, response in
             let directoryURLs = FileManager.default.urls(for: directory, in: domain)
 
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Response.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Response.swift
index 74b1ef54d03650e44ab64cff8eec9f399a170044..23571383bae882f6aa40766ae674ed5ebb100db0 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Response.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Response.swift
@@ -58,8 +58,7 @@ public struct DefaultDataResponse {
         data: Data?,
         error: Error?,
         timeline: Timeline = Timeline(),
-        metrics: AnyObject? = nil)
-    {
+        metrics: AnyObject? = nil) {
         self.request = request
         self.response = response
         self.data = data
@@ -109,8 +108,7 @@ public struct DataResponse<Value> {
         response: HTTPURLResponse?,
         data: Data?,
         result: Result<Value>,
-        timeline: Timeline = Timeline())
-    {
+        timeline: Timeline = Timeline()) {
         self.request = request
         self.response = response
         self.data = data
@@ -296,8 +294,7 @@ public struct DefaultDownloadResponse {
         resumeData: Data?,
         error: Error?,
         timeline: Timeline = Timeline(),
-        metrics: AnyObject? = nil)
-    {
+        metrics: AnyObject? = nil) {
         self.request = request
         self.response = response
         self.temporaryURL = temporaryURL
@@ -359,8 +356,7 @@ public struct DownloadResponse<Value> {
         destinationURL: URL?,
         resumeData: Data?,
         result: Result<Value>,
-        timeline: Timeline = Timeline())
-    {
+        timeline: Timeline = Timeline()) {
         self.request = request
         self.response = response
         self.temporaryURL = temporaryURL
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift
index 3333726d5c72c8e9f4582ce2e3df04c7f06a8736..fd049edac1c98978c3e15b462f445eb82975a5b5 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift
@@ -144,8 +144,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         responseSerializer: T,
         completionHandler: @escaping (DataResponse<T.SerializedObject>) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             let result = responseSerializer.serializeResponse(
                 self.request,
@@ -182,8 +181,7 @@ extension DownloadRequest {
     public func response(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DefaultDownloadResponse) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             (queue ?? DispatchQueue.main).async {
                 var downloadResponse = DefaultDownloadResponse(
@@ -218,8 +216,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         responseSerializer: T,
         completionHandler: @escaping (DownloadResponse<T.SerializedObject>) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             let result = responseSerializer.serializeResponse(
                 self.request,
@@ -289,8 +286,7 @@ extension DataRequest {
     public func responseData(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DataResponse<Data>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.dataResponseSerializer(),
@@ -329,8 +325,7 @@ extension DownloadRequest {
     public func responseData(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DownloadResponse<Data>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.dataResponseSerializer(),
@@ -356,8 +351,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<String>
-    {
+        -> Result<String> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success("") }
@@ -411,8 +405,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         encoding: String.Encoding? = nil,
         completionHandler: @escaping (DataResponse<String>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.stringResponseSerializer(encoding: encoding),
@@ -459,8 +452,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         encoding: String.Encoding? = nil,
         completionHandler: @escaping (DownloadResponse<String>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.stringResponseSerializer(encoding: encoding),
@@ -486,8 +478,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<Any>
-    {
+        -> Result<Any> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) }
@@ -514,8 +505,7 @@ extension DataRequest {
     /// - returns: A JSON object response serializer.
     public static func jsonResponseSerializer(
         options: JSONSerialization.ReadingOptions = .allowFragments)
-        -> DataResponseSerializer<Any>
-    {
+        -> DataResponseSerializer<Any> {
         return DataResponseSerializer { _, response, data, error in
             return Request.serializeResponseJSON(options: options, response: response, data: data, error: error)
         }
@@ -532,8 +522,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         options: JSONSerialization.ReadingOptions = .allowFragments,
         completionHandler: @escaping (DataResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.jsonResponseSerializer(options: options),
@@ -551,8 +540,7 @@ extension DownloadRequest {
     /// - returns: A JSON object response serializer.
     public static func jsonResponseSerializer(
         options: JSONSerialization.ReadingOptions = .allowFragments)
-        -> DownloadResponseSerializer<Any>
-    {
+        -> DownloadResponseSerializer<Any> {
         return DownloadResponseSerializer { _, response, fileURL, error in
             guard error == nil else { return .failure(error!) }
 
@@ -580,8 +568,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         options: JSONSerialization.ReadingOptions = .allowFragments,
         completionHandler: @escaping (DownloadResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.jsonResponseSerializer(options: options),
@@ -607,8 +594,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<Any>
-    {
+        -> Result<Any> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) }
@@ -635,8 +621,7 @@ extension DataRequest {
     /// - returns: A property list object response serializer.
     public static func propertyListResponseSerializer(
         options: PropertyListSerialization.ReadOptions = [])
-        -> DataResponseSerializer<Any>
-    {
+        -> DataResponseSerializer<Any> {
         return DataResponseSerializer { _, response, data, error in
             return Request.serializeResponsePropertyList(options: options, response: response, data: data, error: error)
         }
@@ -653,8 +638,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         options: PropertyListSerialization.ReadOptions = [],
         completionHandler: @escaping (DataResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.propertyListResponseSerializer(options: options),
@@ -672,8 +656,7 @@ extension DownloadRequest {
     /// - returns: A property list object response serializer.
     public static func propertyListResponseSerializer(
         options: PropertyListSerialization.ReadOptions = [])
-        -> DownloadResponseSerializer<Any>
-    {
+        -> DownloadResponseSerializer<Any> {
         return DownloadResponseSerializer { _, response, fileURL, error in
             guard error == nil else { return .failure(error!) }
 
@@ -701,8 +684,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         options: PropertyListSerialization.ReadOptions = [],
         completionHandler: @escaping (DownloadResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.propertyListResponseSerializer(options: options),
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift
index 7f44c8d2c6aa425819fa8e6cb388051fcf84cd65..d50e941fabdf6d02e02168cb2ff2fe85f3799aab 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift
@@ -249,7 +249,6 @@ public enum ServerTrustPolicy {
             let unspecified = SecTrustResultType.unspecified
             let proceed = SecTrustResultType.proceed
 
-
             isValid = result == unspecified || result == proceed
         }
 
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift
index 03bcb7ced6c8349f54e8ef3a557b2052fa182708..17d0d9f1506a6523301f7d948cb2b0ee60e4a8f2 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift
@@ -255,8 +255,7 @@ extension SessionDelegate: URLSessionDelegate {
     open func urlSession(
         _ session: URLSession,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         guard sessionDidReceiveChallengeWithCompletion == nil else {
             sessionDidReceiveChallengeWithCompletion?(session, challenge, completionHandler)
             return
@@ -315,8 +314,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         task: URLSessionTask,
         willPerformHTTPRedirection response: HTTPURLResponse,
         newRequest request: URLRequest,
-        completionHandler: @escaping (URLRequest?) -> Void)
-    {
+        completionHandler: @escaping (URLRequest?) -> Void) {
         guard taskWillPerformHTTPRedirectionWithCompletion == nil else {
             taskWillPerformHTTPRedirectionWithCompletion?(session, task, response, request, completionHandler)
             return
@@ -342,8 +340,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         _ session: URLSession,
         task: URLSessionTask,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         guard taskDidReceiveChallengeWithCompletion == nil else {
             taskDidReceiveChallengeWithCompletion?(session, task, challenge, completionHandler)
             return
@@ -372,8 +369,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
     open func urlSession(
         _ session: URLSession,
         task: URLSessionTask,
-        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void)
-    {
+        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) {
         guard taskNeedNewBodyStreamWithCompletion == nil else {
             taskNeedNewBodyStreamWithCompletion?(session, task, completionHandler)
             return
@@ -398,8 +394,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         task: URLSessionTask,
         didSendBodyData bytesSent: Int64,
         totalBytesSent: Int64,
-        totalBytesExpectedToSend: Int64)
-    {
+        totalBytesExpectedToSend: Int64) {
         if let taskDidSendBodyData = taskDidSendBodyData {
             taskDidSendBodyData(session, task, bytesSent, totalBytesSent, totalBytesExpectedToSend)
         } else if let delegate = self[task]?.delegate as? UploadTaskDelegate {
@@ -512,8 +507,7 @@ extension SessionDelegate: URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         didReceive response: URLResponse,
-        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void)
-    {
+        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
         guard dataTaskDidReceiveResponseWithCompletion == nil else {
             dataTaskDidReceiveResponseWithCompletion?(session, dataTask, response, completionHandler)
             return
@@ -536,8 +530,7 @@ extension SessionDelegate: URLSessionDataDelegate {
     open func urlSession(
         _ session: URLSession,
         dataTask: URLSessionDataTask,
-        didBecome downloadTask: URLSessionDownloadTask)
-    {
+        didBecome downloadTask: URLSessionDownloadTask) {
         if let dataTaskDidBecomeDownloadTask = dataTaskDidBecomeDownloadTask {
             dataTaskDidBecomeDownloadTask(session, dataTask, downloadTask)
         } else {
@@ -573,8 +566,7 @@ extension SessionDelegate: URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         willCacheResponse proposedResponse: CachedURLResponse,
-        completionHandler: @escaping (CachedURLResponse?) -> Void)
-    {
+        completionHandler: @escaping (CachedURLResponse?) -> Void) {
         guard dataTaskWillCacheResponseWithCompletion == nil else {
             dataTaskWillCacheResponseWithCompletion?(session, dataTask, proposedResponse, completionHandler)
             return
@@ -608,8 +600,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
     open func urlSession(
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
-        didFinishDownloadingTo location: URL)
-    {
+        didFinishDownloadingTo location: URL) {
         if let downloadTaskDidFinishDownloadingToURL = downloadTaskDidFinishDownloadingToURL {
             downloadTaskDidFinishDownloadingToURL(session, downloadTask, location)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -632,8 +623,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
         downloadTask: URLSessionDownloadTask,
         didWriteData bytesWritten: Int64,
         totalBytesWritten: Int64,
-        totalBytesExpectedToWrite: Int64)
-    {
+        totalBytesExpectedToWrite: Int64) {
         if let downloadTaskDidWriteData = downloadTaskDidWriteData {
             downloadTaskDidWriteData(session, downloadTask, bytesWritten, totalBytesWritten, totalBytesExpectedToWrite)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -661,8 +651,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
         didResumeAtOffset fileOffset: Int64,
-        expectedTotalBytes: Int64)
-    {
+        expectedTotalBytes: Int64) {
         if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset {
             downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -716,8 +705,7 @@ extension SessionDelegate: URLSessionStreamDelegate {
         _ session: URLSession,
         streamTask: URLSessionStreamTask,
         didBecome inputStream: InputStream,
-        outputStream: OutputStream)
-    {
+        outputStream: OutputStream) {
         streamTaskDidBecomeInputAndOutputStreams?(session, streamTask, inputStream, outputStream)
     }
 }
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift
index 8779efdaa6754e308a65b51a72e1510b7bfb7dc8..8c10706677257501589af7f89b25b7d4dab12189 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift
@@ -166,8 +166,7 @@ open class SessionManager {
     public init(
         configuration: URLSessionConfiguration = URLSessionConfiguration.default,
         delegate: SessionDelegate = SessionDelegate(),
-        serverTrustPolicyManager: ServerTrustPolicyManager? = nil)
-    {
+        serverTrustPolicyManager: ServerTrustPolicyManager? = nil) {
         self.delegate = delegate
         self.session = URLSession(configuration: configuration, delegate: delegate, delegateQueue: nil)
 
@@ -185,8 +184,7 @@ open class SessionManager {
     public init?(
         session: URLSession,
         delegate: SessionDelegate,
-        serverTrustPolicyManager: ServerTrustPolicyManager? = nil)
-    {
+        serverTrustPolicyManager: ServerTrustPolicyManager? = nil) {
         guard delegate === session.delegate else { return nil }
 
         self.delegate = delegate
@@ -229,8 +227,7 @@ open class SessionManager {
         parameters: Parameters? = nil,
         encoding: ParameterEncoding = URLEncoding.default,
         headers: HTTPHeaders? = nil)
-        -> DataRequest
-    {
+        -> DataRequest {
         var originalRequest: URLRequest?
 
         do {
@@ -320,8 +317,7 @@ open class SessionManager {
         encoding: ParameterEncoding = URLEncoding.default,
         headers: HTTPHeaders? = nil,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             let encodedURLRequest = try encoding.encode(urlRequest, with: parameters)
@@ -347,8 +343,7 @@ open class SessionManager {
     open func download(
         _ urlRequest: URLRequestConvertible,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let urlRequest = try urlRequest.asURLRequest()
             return download(.request(urlRequest), to: destination)
@@ -384,8 +379,7 @@ open class SessionManager {
     open func download(
         resumingWith resumeData: Data,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         return download(.resumeData(resumeData), to: destination)
     }
 
@@ -394,8 +388,7 @@ open class SessionManager {
     private func download(
         _ downloadable: DownloadRequest.Downloadable,
         to destination: DownloadRequest.DownloadFileDestination?)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let task = try downloadable.task(session: session, adapter: adapter, queue: queue)
             let download = DownloadRequest(session: session, requestTask: .download(downloadable, task))
@@ -416,8 +409,7 @@ open class SessionManager {
         _ downloadable: DownloadRequest.Downloadable?,
         to destination: DownloadRequest.DownloadFileDestination?,
         failedWith error: Error)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         var downloadTask: Request.RequestTask = .download(nil, nil)
 
         if let downloadable = downloadable {
@@ -458,8 +450,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(fileURL, with: urlRequest)
@@ -504,8 +495,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(data, with: urlRequest)
@@ -550,8 +540,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(stream, with: urlRequest)
@@ -611,8 +600,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil,
-        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?)
-    {
+        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
 
@@ -654,8 +642,7 @@ open class SessionManager {
         multipartFormData: @escaping (MultipartFormData) -> Void,
         usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold,
         with urlRequest: URLRequestConvertible,
-        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?)
-    {
+        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) {
         DispatchQueue.global(qos: .utility).async {
             let formData = MultipartFormData()
             multipartFormData(formData)
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift
index 8e19888fc8d248cebdb8a8b5e0762d2dd1a238fa..12fcbe92d331a893ba21ac2de6470733e6dd5374 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift
@@ -94,8 +94,7 @@ open class TaskDelegate: NSObject {
         task: URLSessionTask,
         willPerformHTTPRedirection response: HTTPURLResponse,
         newRequest request: URLRequest,
-        completionHandler: @escaping (URLRequest?) -> Void)
-    {
+        completionHandler: @escaping (URLRequest?) -> Void) {
         var redirectRequest: URLRequest? = request
 
         if let taskWillPerformHTTPRedirection = taskWillPerformHTTPRedirection {
@@ -110,8 +109,7 @@ open class TaskDelegate: NSObject {
         _ session: URLSession,
         task: URLSessionTask,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         var disposition: URLSession.AuthChallengeDisposition = .performDefaultHandling
         var credential: URLCredential?
 
@@ -150,8 +148,7 @@ open class TaskDelegate: NSObject {
     func urlSession(
         _ session: URLSession,
         task: URLSessionTask,
-        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void)
-    {
+        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) {
         var bodyStream: InputStream?
 
         if let taskNeedNewBodyStream = taskNeedNewBodyStream {
@@ -237,8 +234,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         didReceive response: URLResponse,
-        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void)
-    {
+        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
         var disposition: URLSession.ResponseDisposition = .allow
 
         expectedContentLength = response.expectedContentLength
@@ -253,8 +249,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
     func urlSession(
         _ session: URLSession,
         dataTask: URLSessionDataTask,
-        didBecome downloadTask: URLSessionDownloadTask)
-    {
+        didBecome downloadTask: URLSessionDownloadTask) {
         dataTaskDidBecomeDownloadTask?(session, dataTask, downloadTask)
     }
 
@@ -287,8 +282,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         willCacheResponse proposedResponse: CachedURLResponse,
-        completionHandler: @escaping (CachedURLResponse?) -> Void)
-    {
+        completionHandler: @escaping (CachedURLResponse?) -> Void) {
         var cachedResponse: CachedURLResponse? = proposedResponse
 
         if let dataTaskWillCacheResponse = dataTaskWillCacheResponse {
@@ -343,8 +337,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
     func urlSession(
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
-        didFinishDownloadingTo location: URL)
-    {
+        didFinishDownloadingTo location: URL) {
         temporaryURL = location
 
         guard
@@ -379,8 +372,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
         downloadTask: URLSessionDownloadTask,
         didWriteData bytesWritten: Int64,
         totalBytesWritten: Int64,
-        totalBytesExpectedToWrite: Int64)
-    {
+        totalBytesExpectedToWrite: Int64) {
         if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() }
 
         if let downloadTaskDidWriteData = downloadTaskDidWriteData {
@@ -405,8 +397,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
         didResumeAtOffset fileOffset: Int64,
-        expectedTotalBytes: Int64)
-    {
+        expectedTotalBytes: Int64) {
         if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset {
             downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes)
         } else {
@@ -448,8 +439,7 @@ class UploadTaskDelegate: DataTaskDelegate {
         task: URLSessionTask,
         didSendBodyData bytesSent: Int64,
         totalBytesSent: Int64,
-        totalBytesExpectedToSend: Int64)
-    {
+        totalBytesExpectedToSend: Int64) {
         if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() }
 
         if let taskDidSendBodyData = taskDidSendBodyData {
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift
index 181c9883cb2b8a6b4fd3bd198dc22f500b92da56..b318b1ff484a370f184ef92a9e68bedd850c20a9 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift
@@ -64,8 +64,7 @@ public struct Timeline {
         requestStartTime: CFAbsoluteTime = 0.0,
         initialResponseTime: CFAbsoluteTime = 0.0,
         requestCompletedTime: CFAbsoluteTime = 0.0,
-        serializationCompletedTime: CFAbsoluteTime = 0.0)
-    {
+        serializationCompletedTime: CFAbsoluteTime = 0.0) {
         self.requestStartTime = requestStartTime
         self.initialResponseTime = initialResponseTime
         self.requestCompletedTime = requestCompletedTime
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift
index ec2c5c35a066e58e4e2b8793ea197daa6a735611..deaee34ad870b304d94e6213a04530db629499f7 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift
@@ -94,8 +94,7 @@ extension Request {
         statusCode acceptableStatusCodes: S,
         response: HTTPURLResponse)
         -> ValidationResult
-        where S.Iterator.Element == Int
-    {
+        where S.Iterator.Element == Int {
         if acceptableStatusCodes.contains(response.statusCode) {
             return .success
         } else {
@@ -111,8 +110,7 @@ extension Request {
         response: HTTPURLResponse,
         data: Data?)
         -> ValidationResult
-        where S.Iterator.Element == String
-    {
+        where S.Iterator.Element == String {
         guard let data = data, data.count > 0 else { return .success }
 
         guard
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/AnyPromise.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/AnyPromise.swift
index 843f2c1facf4569c14288ded1fac8642f3eb9e83..251659bc58271bb6a364b80e1ecf7e0a641eafe1 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/AnyPromise.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/AnyPromise.swift
@@ -100,7 +100,7 @@ import Foundation
         state.catch(on: q, policy: policy, else: { _ in }, execute: body)
     }
 
-//MARK: ObjC methods
+// MARK: ObjC methods
 
     /**
      A promise starts pending and eventually resolves.
@@ -254,7 +254,6 @@ import Foundation
     }
 }
 
-
 extension AnyPromise {
     /**
      - Returns: A description of the state of this promise.
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Error.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Error.swift
index 99e7d1f292751d82263754e082d752b14d458330..0c746ce45afae0cb6757225e2d20e2d2f2364a62 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Error.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Error.swift
@@ -82,7 +82,6 @@ public enum JSONError: Error {
     case unexpectedRootNode(Any)
 }
 
-
 //////////////////////////////////////////////////////////// Cancellation
 
 public protocol CancellableError: Error {
@@ -129,12 +128,11 @@ extension NSError {
 private var cancelledErrorIdentifiers = Set([
     ErrorPair(PMKErrorDomain, PMKOperationCancelled),
     ErrorPair(NSCocoaErrorDomain, NSUserCancelledError),
-    ErrorPair(NSURLErrorDomain, NSURLErrorCancelled),
+    ErrorPair(NSURLErrorDomain, NSURLErrorCancelled)
 ])
 
 #endif
 
-
 extension Error {
     public var isCancelledError: Bool {
         if let ce = self as? CancellableError {
@@ -150,7 +148,6 @@ extension Error {
     }
 }
 
-
 //////////////////////////////////////////////////////// Unhandled Errors
 class ErrorConsumptionToken {
     var consumed = false
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Promise.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Promise.swift
index 12c85ce4f0d540d2e0af9bd15f954cab377cd9db..39cfd4ad2914eaeb959b34c23564a367199e4a65 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Promise.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Promise.swift
@@ -2,7 +2,6 @@ import class Dispatch.DispatchQueue
 import class Foundation.NSError
 import func Foundation.NSLog
 
-
 /**
  A *promise* represents the future value of a (usually) asynchronous task.
 
@@ -171,7 +170,7 @@ open class Promise<T> {
      */
     public func then<U>(on q: DispatchQueue = .default, execute body: @escaping (T) throws -> Promise<U>) -> Promise<U> {
         var resolve: ((Resolution<U>) -> Void)!
-        let rv = Promise<U>{ resolve = $0 }
+        let rv = Promise<U> { resolve = $0 }
         state.then(on: q, else: resolve) { value in
             let promise = try body(value)
             guard promise !== rv else { throw PMKError.returnedSelf }
@@ -268,7 +267,7 @@ open class Promise<T> {
      */
     public func recover(on q: DispatchQueue = .default, policy: CatchPolicy = .allErrorsExceptCancellation, execute body: @escaping (Error) throws -> Promise) -> Promise {
         var resolve: ((Resolution<T>) -> Void)!
-        let rv = Promise{ resolve = $0 }
+        let rv = Promise { resolve = $0 }
         state.catch(on: q, policy: policy, else: resolve) { error in
             let promise = try body(error)
             guard promise !== rv else { throw PMKError.returnedSelf }
@@ -319,7 +318,7 @@ open class Promise<T> {
      */
 	@discardableResult
     public func always(on q: DispatchQueue = .default, execute body: @escaping () -> Void) -> Promise {
-        state.always(on: q) { resolution in
+        state.always(on: q) { _ in
             body()
         }
         return self
@@ -354,7 +353,7 @@ open class Promise<T> {
         return then(on: zalgo) { _ in return }
     }
 
-//MARK: deprecations
+// MARK: deprecations
 
     @available(*, unavailable, renamed: "always()")
     public func finally(on: DispatchQueue = DispatchQueue.main, execute body: () -> Void) -> Promise { fatalError() }
@@ -386,7 +385,7 @@ open class Promise<T> {
     @available(*, unavailable, renamed: "init(value:)")
     public init(_ value: T) { fatalError() }
 
-//MARK: disallow `Promise<Error>`
+// MARK: disallow `Promise<Error>`
 
     @available(*, unavailable, message: "cannot instantiate Promise<Error>")
     public init<T: Error>(resolvers: (_ fulfill: (T) -> Void, _ reject: (Error) -> Void) throws -> Void) { fatalError() }
@@ -394,7 +393,7 @@ open class Promise<T> {
     @available(*, unavailable, message: "cannot instantiate Promise<Error>")
     public class func pending<T: Error>() -> (promise: Promise, fulfill: (T) -> Void, reject: (Error) -> Void) { fatalError() }
 
-//MARK: disallow returning `Error`
+// MARK: disallow returning `Error`
 
     @available (*, unavailable, message: "instead of returning the error; throw")
     public func then<U: Error>(on: DispatchQueue = .default, execute body: (T) throws -> U) -> Promise<U> { fatalError() }
@@ -402,7 +401,7 @@ open class Promise<T> {
     @available (*, unavailable, message: "instead of returning the error; throw")
     public func recover<T: Error>(on: DispatchQueue = .default, execute body: (Error) throws -> T) -> Promise { fatalError() }
 
-//MARK: disallow returning `Promise?`
+// MARK: disallow returning `Promise?`
 
     @available(*, unavailable, message: "unwrap the promise")
     public func then<U>(on: DispatchQueue = .default, execute body: (T) throws -> Promise<U>?) -> Promise<U> { fatalError() }
@@ -487,7 +486,7 @@ public func firstly<T, U, V, W, X>(execute body: () throws -> (Promise<T>, Promi
 }
 
 /// utility function to serve `firstly` implementations with `body` returning tuple of promises
-fileprivate func firstly<U, V>(execute body: () throws -> V, when: (V) -> Promise<U>) -> Promise<U> {
+private func firstly<U, V>(execute body: () throws -> V, when: (V) -> Promise<U>) -> Promise<U> {
     do {
         return when(try body())
     } catch {
@@ -509,7 +508,6 @@ public func dispatch_promise<T>(_ on: DispatchQueue, _ body: @escaping () throws
     return Promise(value: ()).then(on: on, execute: body)
 }
 
-
 /**
  The underlying resolved state of a promise.
  - Remark: Same as `Resolution<T>` but without the associated `ErrorConsumptionToken`.
@@ -603,7 +601,6 @@ extension Promise {
     }
 }
 
-
 extension Promise where T: Collection {
     /**
      Transforms a `Promise` where `T` is a `Collection` into a `Promise<[U]>`
@@ -627,7 +624,6 @@ extension Promise where T: Collection {
     }
 }
 
-
 #if swift(>=3.1)
 public extension Promise where T == Void {
     convenience init() {
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/State.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/State.swift
index cc1a19ce70041975d26cd7caaff1d11d3de7c5f9..1a87b46af439420c7d547c173f8a9c274f0e4353 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/State.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/State.swift
@@ -154,11 +154,11 @@ class UnsealedState<T>: State<T> {
 
 class SealedState<T>: State<T> {
     fileprivate let resolution: Resolution<T>
-    
+
     init(resolution: Resolution<T>) {
         self.resolution = resolution
     }
-    
+
     override func get() -> Resolution<T>? {
         return resolution
     }
@@ -168,7 +168,6 @@ class SealedState<T>: State<T> {
     }
 }
 
-
 class Handlers<T>: Sequence {
     var bodies: [(Resolution<T>) -> Void] = []
 
@@ -185,7 +184,6 @@ class Handlers<T>: Sequence {
     }
 }
 
-
 extension Resolution: CustomStringConvertible {
     var description: String {
         switch self {
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Zalgo.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Zalgo.swift
index e191df10d69ae7ee62d0f913aa6459723f6676dd..b5364fe81dcec4b022e27fea65adab3a244e20d0 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Zalgo.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/Zalgo.swift
@@ -64,7 +64,6 @@ public let zalgo = DispatchQueue(label: "Zalgo")
  */
 public let waldo = DispatchQueue(label: "Waldo")
 
-
 @inline(__always) func contain_zalgo(_ q: DispatchQueue, body: @escaping () -> Void) {
     if q === zalgo || q === waldo && !Thread.isMainThread {
         body()
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/join.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/join.swift
index 8ff69b2c2c02575c5cd29888c09b07bbbc6f0ae1..a50c4665d4728a7392b0d649e8df181893eebeb3 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/join.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/join.swift
@@ -32,7 +32,7 @@ public func join(_ promises: [Promise<Void>]) -> Promise<Void> {
 @available(*, deprecated: 4.0, message: "Use when(resolved:)")
 public func join<T>(_ promises: [Promise<T>]) -> Promise<[T]> {
     guard !promises.isEmpty else { return Promise(value: []) }
-  
+
     var countdown = promises.count
     let barrier = DispatchQueue(label: "org.promisekit.barrier.join", attributes: .concurrent)
     var rejected = false
@@ -50,7 +50,7 @@ public func join<T>(_ promises: [Promise<T>]) -> Promise<[T]> {
                         if rejected {
                             reject(PMKError.join(promises))
                         } else {
-                            fulfill(promises.map{ $0.value! })
+                            fulfill(promises.map { $0.value! })
                         }
                     }
                 }
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/when.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/when.swift
index 41943b88b78d749bdd8aafb1490c3f0bbf7b23b9..2e48ea4d68b0b20444f7d55711eaac124adba6ff 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/when.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/when.swift
@@ -76,7 +76,7 @@ private func _when<T>(_ promises: [Promise<T>]) -> Promise<Void> {
  - SeeAlso: `when(resolved:)`
 */
 public func when<T>(fulfilled promises: [Promise<T>]) -> Promise<[T]> {
-    return _when(promises).then(on: zalgo) { promises.map{ $0.value! } }
+    return _when(promises).then(on: zalgo) { promises.map { $0.value! } }
 }
 
 /// Wait for all promises in a set to fulfill.
@@ -177,7 +177,7 @@ public func when<T, PromiseIterator: IteratorProtocol>(fulfilled promiseIterator
         func testDone() {
             barrier.sync {
                 if pendingPromises == 0 {
-                    root.fulfill(promises.flatMap{ $0.value })
+                    root.fulfill(promises.flatMap { $0.value })
                 }
             }
         }
@@ -203,7 +203,7 @@ public func when<T, PromiseIterator: IteratorProtocol>(fulfilled promiseIterator
 
         dequeue()
     }
-        
+
     dequeue()
 
     return root.promise
@@ -237,7 +237,7 @@ public func when<T>(resolved promises: [Promise<T>]) -> Promise<[Result<T>]> {
     var countdown = promises.count
     let barrier = DispatchQueue(label: "org.promisekit.barrier.join", attributes: .concurrent)
 
-    return Promise { fulfill, reject in
+    return Promise { fulfill, _ in
         for promise in promises {
             promise.state.pipe { resolution in
                 if case .rejected(_, let token) = resolution {
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/wrap.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/wrap.swift
index 7249df91d3e4c5a5f2c82699b1eff803f91a397c..48bd4b1bee07e3d00863fd8a55ea27c51a09a7a8 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/wrap.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/PromiseKit/Sources/wrap.swift
@@ -27,7 +27,7 @@ public func wrap<T>(_ body: (@escaping (T?, Error?) -> Void) throws -> Void) ->
 }
 
 /// For completion-handlers that eg. provide an enum or an error.
-public func wrap<T>(_ body: (@escaping (T, Error?) -> Void) throws -> Void) -> Promise<T>  {
+public func wrap<T>(_ body: (@escaping (T, Error?) -> Void) throws -> Void) -> Promise<T> {
     return Promise { fulfill, reject in
         try body { obj, err in
             if let err = err {
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient/AppDelegate.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient/AppDelegate.swift
index 7fd6929617679821261e57b4ca8d84a7dfa01af5..821a4aea705cd3d75e1ce8bbd5b0b294648ccbc8 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient/AppDelegate.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient/AppDelegate.swift
@@ -13,7 +13,6 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
 
     var window: UIWindow?
 
-
     func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
         // Override point for customization after application launch.
         return true
@@ -41,6 +40,4 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
         // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient/ViewController.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient/ViewController.swift
index cd7e9a167615554c4164ae88da8b86c6f827af83..8dad16b10f16dc8456195df8832f5a2ab64b5bbd 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient/ViewController.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient/ViewController.swift
@@ -20,6 +20,4 @@ class ViewController: UIViewController {
         // Dispose of any resources that can be recreated.
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift
index 8f58cc4d4fcb23a0742adbf141df380fd44e4a6e..22b2e7d605fa5dc56823c765f851fa780ba902c2 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift
@@ -12,19 +12,19 @@ import XCTest
 @testable import SwaggerClient
 
 class PetAPITests: XCTestCase {
-    
+
     let testTimeout = 10.0
 
     override func setUp() {
         super.setUp()
         // Put setup code here. This method is called before the invocation of each test method in the class.
     }
-    
+
     override func tearDown() {
         // Put teardown code here. This method is called after the invocation of each test method in the class.
         super.tearDown()
     }
-    
+
     func test1CreatePet() {
         let expectation = self.expectation(description: "testCreatePet")
         let category = PetstoreClient.Category(id: 1234, name: "eyeColor")
@@ -35,12 +35,12 @@ class PetAPITests: XCTestCase {
                 expectation.fulfill()
             }.always {
                 // Noop for now
-            }.catch { errorType in
+            }.catch { _ in
                 XCTFail("error creating pet")
         }
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func test2GetPet() {
         let expectation = self.expectation(description: "testGetPet")
         PetAPI.getPetById(petId: 1000).then { pet -> Void in
@@ -49,19 +49,19 @@ class PetAPITests: XCTestCase {
                 expectation.fulfill()
             }.always {
                 // Noop for now
-            }.catch { errorType in
+            }.catch { _ in
                 XCTFail("error creating pet")
         }
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func test3DeletePet() {
         let expectation = self.expectation(description: "testDeletePet")
         PetAPI.deletePet(petId: 1000).then {
             expectation.fulfill()
             }.always {
                 // Noop for now
-            }.catch { (errorType) in
+            }.catch { (_) in
                 XCTFail("error deleting pet")
         }
         self.waitForExpectations(timeout: testTimeout, handler: nil)
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift
index 7d7ae16b836878e279b26b6605f0cb26b2e2d8c9..abb09214717d8ac9954eb6df147d98516d49cd7f 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift
@@ -16,7 +16,7 @@ class StoreAPITests: XCTestCase {
     let isoDateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
 
     let testTimeout = 10.0
-    
+
     func test1PlaceOrder() {
         // use explicit naming to reference the enum so that we test we don't regress on enum naming
         let shipDate = Date()
@@ -32,12 +32,12 @@ class StoreAPITests: XCTestCase {
                 expectation.fulfill()
             }.always {
                 // Noop for now
-            }.catch { errorType in
+            }.catch { _ in
                 XCTFail("error placing order")
         }
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func test2GetOrder() {
         let expectation = self.expectation(description: "testGetOrder")
         StoreAPI.getOrderById(orderId: 1000).then { order -> Void in
@@ -47,19 +47,19 @@ class StoreAPITests: XCTestCase {
             expectation.fulfill()
             }.always {
                 // Noop for now
-            }.catch { errorType in
+            }.catch { _ in
                 XCTFail("error placing order")
         }
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func test3DeleteOrder() {
         let expectation = self.expectation(description: "testDeleteOrder")
         StoreAPI.deleteOrder(orderId: "1000").then {
             expectation.fulfill()
             }.always {
                 // Noop for now
-            }.catch { (error) in
+            }.catch { (_) in
                 XCTFail("error deleting order")
         }
         self.waitForExpectations(timeout: testTimeout, handler: nil)
diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift
index f416f745b453ddbb0b1a8e45f2fe93f94af4ec6b..2fd0ff0fbb42ba3ed7a8576e01422121a38786dc 100644
--- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift
+++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift
@@ -21,19 +21,19 @@ class UserAPITests: XCTestCase {
             expectation.fulfill()
             }.always {
                 // Noop for now
-            }.catch { (error) in
+            }.catch { (_) in
                 XCTFail("login error")
         }
         self.waitForExpectations(timeout: testTimeout, handler: nil)
     }
-    
+
     func testLogout() {
         let expectation = self.expectation(description: "testLogout")
         UserAPI.logoutUser().then {
             expectation.fulfill()
             }.always {
                 // Noop for now
-            }.catch { (error) in
+            }.catch { (_) in
                 XCTFail("")
         }
         self.waitForExpectations(timeout: testTimeout, handler: nil)
diff --git a/samples/client/petstore/swift4/promisekit/docs/CatAllOf.md b/samples/client/petstore/swift4/promisekit/docs/CatAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..79789be61c01631cd56d3925bd31a17533bcbf88
--- /dev/null
+++ b/samples/client/petstore/swift4/promisekit/docs/CatAllOf.md
@@ -0,0 +1,10 @@
+# CatAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**declawed** | **Bool** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/promisekit/docs/DogAllOf.md b/samples/client/petstore/swift4/promisekit/docs/DogAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..9302ef52e938a092420c1a71707d79ca92464fb2
--- /dev/null
+++ b/samples/client/petstore/swift4/promisekit/docs/DogAllOf.md
@@ -0,0 +1,10 @@
+# DogAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**breed** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/promisekit/docs/UserAPI.md b/samples/client/petstore/swift4/promisekit/docs/UserAPI.md
index 2ec91cfda3fb2e404048abb6e9f827344c71024f..e18cc451e98ebf1570a7ab51af148782fc095245 100644
--- a/samples/client/petstore/swift4/promisekit/docs/UserAPI.md
+++ b/samples/client/petstore/swift4/promisekit/docs/UserAPI.md
@@ -89,7 +89,7 @@ UserAPI.createUsersWithArrayInput(body: body).then {
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
@@ -134,7 +134,7 @@ UserAPI.createUsersWithListInput(body: body).then {
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
diff --git a/samples/client/petstore/swift4/promisekit/project.yml b/samples/client/petstore/swift4/promisekit/project.yml
new file mode 100644
index 0000000000000000000000000000000000000000..e35045a1d068c9abdf2e54f41981d6992dfddad1
--- /dev/null
+++ b/samples/client/petstore/swift4/promisekit/project.yml
@@ -0,0 +1,16 @@
+name: PetstoreClient
+targets:
+  PetstoreClient:
+    type: framework
+    platform: iOS
+    deploymentTarget: "10.0"
+    sources: [PetstoreClient]
+    info:
+      path: ./Info.plist
+      version: 1.0.0
+    settings:
+      APPLICATION_EXTENSION_API_ONLY: true
+    scheme: {}
+    dependencies:
+    - carthage: Alamofire
+    - carthage: PromiseKit
diff --git a/samples/client/petstore/swift4/rxswift/.openapi-generator/VERSION b/samples/client/petstore/swift4/rxswift/.openapi-generator/VERSION
index afa6365606414bf56f925745712166af5b4a2be0..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/swift4/rxswift/.openapi-generator/VERSION
+++ b/samples/client/petstore/swift4/rxswift/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.0-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/swift4/rxswift/Info.plist b/samples/client/petstore/swift4/rxswift/Info.plist
new file mode 100644
index 0000000000000000000000000000000000000000..323e5ecfc420ad71d4ea6890405ca4af8a03bafd
--- /dev/null
+++ b/samples/client/petstore/swift4/rxswift/Info.plist
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>$(DEVELOPMENT_LANGUAGE)</string>
+	<key>CFBundleExecutable</key>
+	<string>$(EXECUTABLE_NAME)</string>
+	<key>CFBundleIdentifier</key>
+	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>$(PRODUCT_NAME)</string>
+	<key>CFBundlePackageType</key>
+	<string>FMWK</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleVersion</key>
+	<string>1</string>
+</dict>
+</plist>
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/rxswift/PetstoreClient.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000000000000000000000000000000000..578d38a3fffbf251aef788d9016b27ac6b77d4ce
--- /dev/null
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient.xcodeproj/project.pbxproj
@@ -0,0 +1,605 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 50;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */; };
+		0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */; };
+		08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */; };
+		08F5828F0C2BCF07A9E4917DBBB993AE /* AdditionalPropertiesInteger.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA2F3566156A4ABC465F201B4A1F6227 /* AdditionalPropertiesInteger.swift */; };
+		1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */; };
+		122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */; };
+		12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */; };
+		12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */; };
+		16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */; };
+		18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 212AA914B7F1793A4E32C119370FB05F /* Cat.swift */; };
+		196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */; };
+		271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */; };
+		293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */; };
+		297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */; };
+		2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */; };
+		2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */; };
+		3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */; };
+		36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */; };
+		39F9FBA1AC5C2612ECA1FF715EBFC287 /* AdditionalPropertiesString.swift in Sources */ = {isa = PBXBuildFile; fileRef = FFE215C1B526E0418ED301B15357B970 /* AdditionalPropertiesString.swift */; };
+		3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */; };
+		41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */; };
+		42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */; };
+		491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */; };
+		4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */; };
+		52B5604F986335DB69CD2B430FB83BAB /* AdditionalPropertiesAnyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5AB1037D937AADF8B4A70C96D5E5D61 /* AdditionalPropertiesAnyType.swift */; };
+		58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */; };
+		59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */; };
+		59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */; };
+		59EAB3527305A37ED99FB210045B69EA /* AdditionalPropertiesNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E0512B3582586B4C0C598D5DB1C0D39 /* AdditionalPropertiesNumber.swift */; };
+		5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */; };
+		655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */; };
+		6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */; };
+		6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */; };
+		7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */; };
+		79536B981ECC24C77EB665FDAC7CA7BD /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 69DB3E1D94EB0566C0052331742B5012 /* RxSwift.framework */; };
+		82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */; };
+		83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */; };
+		92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = A913A57E72D723632E9A718FF4525C81 /* Client.swift */; };
+		97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */; };
+		988F461F59E4E1091156840007CB3773 /* AdditionalPropertiesBoolean.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CC24C01A55F644957196F9F81D10F81 /* AdditionalPropertiesBoolean.swift */; };
+		A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */; };
+		A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */; };
+		A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */; };
+		AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */; };
+		B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */; };
+		BB02FDCF1B2B0E457E1C2BF39FBB599D /* XmlItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */; };
+		BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */; };
+		C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */; };
+		C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A6070F581E611FF44AFD40A4315C49A /* List.swift */; };
+		C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */; };
+		C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */; };
+		D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */; };
+		D68F23CD4B5178493CE7AE8DFB868EAE /* AdditionalPropertiesArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FEE553331890581C2FF366F9EA0956D /* AdditionalPropertiesArray.swift */; };
+		D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */; };
+		DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */; };
+		DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */; };
+		DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */; };
+		DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */; };
+		E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 386FD590658E90509C121118F057604D /* SpecialModelName.swift */; };
+		E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */; };
+		E57CD12D2F500D40B4135D0F5ECA9866 /* AdditionalPropertiesObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72FEDC94BA0E37214D360871B284BC8A /* AdditionalPropertiesObject.swift */; };
+		F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8699F7966F748ED026A6FB4CF550442B /* Models.swift */; };
+		F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = C81447828475F76C5CF4F08AA65292F7 /* Return.swift */; };
+		FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */; };
+		FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+		02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodableHelper.swift; sourceTree = "<group>"; };
+		0CC24C01A55F644957196F9F81D10F81 /* AdditionalPropertiesBoolean.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesBoolean.swift; sourceTree = "<group>"; };
+		10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = "<group>"; };
+		164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderExample.swift; sourceTree = "<group>"; };
+		1E0512B3582586B4C0C598D5DB1C0D39 /* AdditionalPropertiesNumber.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesNumber.swift; sourceTree = "<group>"; };
+		212AA914B7F1793A4E32C119370FB05F /* Cat.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = "<group>"; };
+		27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = "<group>"; };
+		28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = "<group>"; };
+		3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = "<group>"; };
+		35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodingHelper.swift; sourceTree = "<group>"; };
+		37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIs.swift; sourceTree = "<group>"; };
+		386FD590658E90509C121118F057604D /* SpecialModelName.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = "<group>"; };
+		3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = "<group>"; };
+		396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CatAllOf.swift; sourceTree = "<group>"; };
+		3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = "<group>"; };
+		47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = "<group>"; };
+		4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = "<group>"; };
+		4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = "<group>"; };
+		4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = "<group>"; };
+		4FEE553331890581C2FF366F9EA0956D /* AdditionalPropertiesArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesArray.swift; sourceTree = "<group>"; };
+		5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = "<group>"; };
+		69DB3E1D94EB0566C0052331742B5012 /* RxSwift.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = RxSwift.framework; sourceTree = "<group>"; };
+		6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = "<group>"; };
+		6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = "<group>"; };
+		6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = "<group>"; };
+		72FEDC94BA0E37214D360871B284BC8A /* AdditionalPropertiesObject.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesObject.swift; sourceTree = "<group>"; };
+		7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = "<group>"; };
+		7A6070F581E611FF44AFD40A4315C49A /* List.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = "<group>"; };
+		7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = "<group>"; };
+		82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = "<group>"; };
+		84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlamofireImplementations.swift; sourceTree = "<group>"; };
+		8699F7966F748ED026A6FB4CF550442B /* Models.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Models.swift; sourceTree = "<group>"; };
+		897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIHelper.swift; sourceTree = "<group>"; };
+		8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = "<group>"; };
+		95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = "<group>"; };
+		9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodableEncoding.swift; sourceTree = "<group>"; };
+		9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = "<group>"; };
+		9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = "<group>"; };
+		A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DogAllOf.swift; sourceTree = "<group>"; };
+		A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XmlItem.swift; sourceTree = "<group>"; };
+		A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Alamofire.framework; sourceTree = "<group>"; };
+		A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = "<group>"; };
+		A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = "<group>"; };
+		A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = "<group>"; };
+		A913A57E72D723632E9A718FF4525C81 /* Client.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = "<group>"; };
+		B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = "<group>"; };
+		B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = "<group>"; };
+		B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = "<group>"; };
+		B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = "<group>"; };
+		C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = "<group>"; };
+		C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = "<group>"; };
+		C81447828475F76C5CF4F08AA65292F7 /* Return.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = "<group>"; };
+		E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = "<group>"; };
+		EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderDefault.swift; sourceTree = "<group>"; };
+		ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = "<group>"; };
+		F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = "<group>"; };
+		F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = "<group>"; };
+		F5AB1037D937AADF8B4A70C96D5E5D61 /* AdditionalPropertiesAnyType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesAnyType.swift; sourceTree = "<group>"; };
+		FA2F3566156A4ABC465F201B4A1F6227 /* AdditionalPropertiesInteger.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesInteger.swift; sourceTree = "<group>"; };
+		FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = "<group>"; };
+		FFE215C1B526E0418ED301B15357B970 /* AdditionalPropertiesString.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesString.swift; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */,
+				79536B981ECC24C77EB665FDAC7CA7BD /* RxSwift.framework in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				7861EE241895128F64DD787367B3022D /* Carthage */,
+			);
+			name = Frameworks;
+			sourceTree = "<group>";
+		};
+		4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */ = {
+			isa = PBXGroup;
+			children = (
+				F5AB1037D937AADF8B4A70C96D5E5D61 /* AdditionalPropertiesAnyType.swift */,
+				4FEE553331890581C2FF366F9EA0956D /* AdditionalPropertiesArray.swift */,
+				0CC24C01A55F644957196F9F81D10F81 /* AdditionalPropertiesBoolean.swift */,
+				396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */,
+				FA2F3566156A4ABC465F201B4A1F6227 /* AdditionalPropertiesInteger.swift */,
+				1E0512B3582586B4C0C598D5DB1C0D39 /* AdditionalPropertiesNumber.swift */,
+				72FEDC94BA0E37214D360871B284BC8A /* AdditionalPropertiesObject.swift */,
+				FFE215C1B526E0418ED301B15357B970 /* AdditionalPropertiesString.swift */,
+				95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */,
+				8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */,
+				A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */,
+				7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */,
+				B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */,
+				F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */,
+				A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */,
+				212AA914B7F1793A4E32C119370FB05F /* Cat.swift */,
+				3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */,
+				6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */,
+				3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */,
+				A913A57E72D723632E9A718FF4525C81 /* Client.swift */,
+				C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */,
+				A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */,
+				10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */,
+				4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */,
+				FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */,
+				3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */,
+				4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */,
+				3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */,
+				4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */,
+				7A6070F581E611FF44AFD40A4315C49A /* List.swift */,
+				7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */,
+				9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */,
+				82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */,
+				5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */,
+				B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */,
+				27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */,
+				F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */,
+				C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */,
+				ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */,
+				6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */,
+				C81447828475F76C5CF4F08AA65292F7 /* Return.swift */,
+				386FD590658E90509C121118F057604D /* SpecialModelName.swift */,
+				47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */,
+				B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */,
+				EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */,
+				19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */,
+				E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */,
+				A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */,
+			);
+			path = Models;
+			sourceTree = "<group>";
+		};
+		5FBA6AE5F64CD737F88B4565AC3CCD3B = {
+			isa = PBXGroup;
+			children = (
+				9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */,
+				1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */,
+				857F0DEA1890CE66D6DAD556C55821A6 /* Products */,
+			);
+			sourceTree = "<group>";
+		};
+		67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */ = {
+			isa = PBXGroup;
+			children = (
+				84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */,
+				897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */,
+				37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */,
+				02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */,
+				28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */,
+				B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */,
+				9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */,
+				35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */,
+				8699F7966F748ED026A6FB4CF550442B /* Models.swift */,
+				F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */,
+				4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */,
+			);
+			path = OpenAPIs;
+			sourceTree = "<group>";
+		};
+		7861EE241895128F64DD787367B3022D /* Carthage */ = {
+			isa = PBXGroup;
+			children = (
+				A012205B41CB71A62B86EECDEAFB0990 /* iOS */,
+			);
+			name = Carthage;
+			path = Carthage/Build;
+			sourceTree = "<group>";
+		};
+		857F0DEA1890CE66D6DAD556C55821A6 /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+		9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */ = {
+			isa = PBXGroup;
+			children = (
+				EF4C81BDD734856ED5023B777D35098B /* Classes */,
+			);
+			path = PetstoreClient;
+			sourceTree = "<group>";
+		};
+		A012205B41CB71A62B86EECDEAFB0990 /* iOS */ = {
+			isa = PBXGroup;
+			children = (
+				A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */,
+				69DB3E1D94EB0566C0052331742B5012 /* RxSwift.framework */,
+			);
+			path = iOS;
+			sourceTree = "<group>";
+		};
+		EF4C81BDD734856ED5023B777D35098B /* Classes */ = {
+			isa = PBXGroup;
+			children = (
+				67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */,
+			);
+			path = Classes;
+			sourceTree = "<group>";
+		};
+		F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */ = {
+			isa = PBXGroup;
+			children = (
+				9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */,
+				6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */,
+				B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */,
+				9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */,
+				A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */,
+				7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */,
+			);
+			path = APIs;
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+		C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */;
+			buildPhases = (
+				E539708354CE60FE486F81EDE56D13C8 /* Sources */,
+				D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = PetstoreClient;
+			productName = PetstoreClient;
+			productReference = 164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */;
+			productType = "com.apple.product-type.framework";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		E7D276EE2369D8C455513C2E05F9AED0 /* Project object */ = {
+			isa = PBXProject;
+			attributes = {
+				LastUpgradeCheck = 1000;
+			};
+			buildConfigurationList = ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */;
+			compatibilityVersion = "Xcode 9.3";
+			developmentRegion = en;
+			hasScannedForEncodings = 0;
+			knownRegions = (
+				en,
+			);
+			mainGroup = 5FBA6AE5F64CD737F88B4565AC3CCD3B;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+				C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXSourcesBuildPhase section */
+		E539708354CE60FE486F81EDE56D13C8 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */,
+				0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */,
+				52B5604F986335DB69CD2B430FB83BAB /* AdditionalPropertiesAnyType.swift in Sources */,
+				D68F23CD4B5178493CE7AE8DFB868EAE /* AdditionalPropertiesArray.swift in Sources */,
+				988F461F59E4E1091156840007CB3773 /* AdditionalPropertiesBoolean.swift in Sources */,
+				12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */,
+				08F5828F0C2BCF07A9E4917DBBB993AE /* AdditionalPropertiesInteger.swift in Sources */,
+				59EAB3527305A37ED99FB210045B69EA /* AdditionalPropertiesNumber.swift in Sources */,
+				E57CD12D2F500D40B4135D0F5ECA9866 /* AdditionalPropertiesObject.swift in Sources */,
+				39F9FBA1AC5C2612ECA1FF715EBFC287 /* AdditionalPropertiesString.swift in Sources */,
+				58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */,
+				02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */,
+				DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */,
+				83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */,
+				97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */,
+				3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */,
+				A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */,
+				C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */,
+				7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */,
+				18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */,
+				41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */,
+				42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */,
+				5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */,
+				92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */,
+				6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */,
+				DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */,
+				D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */,
+				271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */,
+				A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */,
+				59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */,
+				08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */,
+				C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */,
+				297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */,
+				A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */,
+				FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */,
+				491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */,
+				36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */,
+				DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */,
+				16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */,
+				12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */,
+				C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */,
+				655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */,
+				D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */,
+				2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */,
+				F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */,
+				C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */,
+				AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */,
+				59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */,
+				82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */,
+				1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */,
+				B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */,
+				3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */,
+				293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */,
+				F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */,
+				E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */,
+				122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */,
+				196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */,
+				E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */,
+				6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */,
+				FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */,
+				BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */,
+				DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */,
+				BB02FDCF1B2B0E457E1C2BF39FBB599D /* XmlItem.swift in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+		3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Release;
+		};
+		A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_TESTABILITY = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"$(inherited)",
+					"DEBUG=1",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+				SWIFT_VERSION = 4.2;
+			};
+			name = Debug;
+		};
+		DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Debug;
+		};
+		F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
+				SWIFT_VERSION = 4.2;
+				VALIDATE_PRODUCT = YES;
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */,
+				3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = "";
+		};
+		ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */,
+				F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Debug;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = E7D276EE2369D8C455513C2E05F9AED0 /* Project object */;
+}
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/samples/client/petstore/swift4/rxswift/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000000000000000000000000000000000000..919434a6254f0e9651f402737811be6634a03e9c
--- /dev/null
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:">
+   </FileRef>
+</Workspace>
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme b/samples/client/petstore/swift4/rxswift/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
new file mode 100644
index 0000000000000000000000000000000000000000..7802e379453b951ec5f78c0f1c296a38b2ee90e4
--- /dev/null
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "1000"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+               BuildableName = "PetstoreClient.framework"
+               BlueprintName = "PetstoreClient"
+               ReferencedContainer = "container:PetstoreClient.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <CommandLineArguments>
+      </CommandLineArguments>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIHelper.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
index d94614b34fc71f50736db77e0d046bb2d356b30e..75dea24395752b328facec8e593fcac7ea470217 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
@@ -7,7 +7,7 @@
 import Foundation
 
 public struct APIHelper {
-    public static func rejectNil(_ source: [String:Any?]) -> [String:Any]? {
+    public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? {
         let destination = source.reduce(into: [String: Any]()) { (result, item) in
             if let value = item.value {
                 result[item.key] = value
@@ -20,17 +20,17 @@ public struct APIHelper {
         return destination
     }
 
-    public static func rejectNilHeaders(_ source: [String:Any?]) -> [String:String] {
+    public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] {
         return source.reduce(into: [String: String]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
-                result[item.key] = collection.filter({ $0 != nil }).map{ "\($0!)" }.joined(separator: ",")
+                result[item.key] = collection.filter({ $0 != nil }).map { "\($0!)" }.joined(separator: ",")
             } else if let value: Any = item.value {
                 result[item.key] = "\(value)"
             }
         }
     }
 
-    public static func convertBoolToString(_ source: [String: Any]?) -> [String:Any]? {
+    public static func convertBoolToString(_ source: [String: Any]?) -> [String: Any]? {
         guard let source = source else {
             return nil
         }
@@ -52,7 +52,7 @@ public struct APIHelper {
         return source
     }
 
-    public static func mapValuesToQueryItems(_ source: [String:Any?]) -> [URLQueryItem]? {
+    public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? {
         let destination = source.filter({ $0.value != nil}).reduce(into: [URLQueryItem]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
                 let value = collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",")
@@ -68,4 +68,3 @@ public struct APIHelper {
         return destination
     }
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs.swift
index 2890bffa2747d155c7c4c021610132c197ef2c83..9e4312f685de410bc328b2da41601768b1920229 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs.swift
@@ -9,22 +9,22 @@ import Foundation
 open class PetstoreClientAPI {
     public static var basePath = "http://petstore.swagger.io:80/v2"
     public static var credential: URLCredential?
-    public static var customHeaders: [String:String] = [:]
+    public static var customHeaders: [String: String] = [:]
     public static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory()
 }
 
 open class RequestBuilder<T> {
     var credential: URLCredential?
-    var headers: [String:String]
-    public let parameters: [String:Any]?
+    var headers: [String: String]
+    public let parameters: [String: Any]?
     public let isBody: Bool
     public let method: String
     public let URLString: String
 
     /// Optional block to obtain a reference to the request's progress instance when available.
-    public var onProgressReady: ((Progress) -> ())?
+    public var onProgressReady: ((Progress) -> Void)?
 
-    required public init(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         self.method = method
         self.URLString = URLString
         self.parameters = parameters
@@ -34,7 +34,7 @@ open class RequestBuilder<T> {
         addHeaders(PetstoreClientAPI.customHeaders)
     }
 
-    open func addHeaders(_ aHeaders:[String:String]) {
+    open func addHeaders(_ aHeaders: [String: String]) {
         for (header, value) in aHeaders {
             headers[header] = value
         }
@@ -57,5 +57,5 @@ open class RequestBuilder<T> {
 
 public protocol RequestBuilderFactory {
     func getNonDecodableBuilder<T>() -> RequestBuilder<T>.Type
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type
 }
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
index 1a95322a6baeb7f9b2d7e63adc438cc89b749978..0d88a4bad9818f1d026684fa9c3b87d3292612fe 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class AnotherFakeAPI {
     /**
      To test special tags
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
index 05053aed92e204e8ee66adcc041bdb418fdbacb3..8e6840eeaac40c7b15f4dc8d71cd1fd46c065315 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class FakeAPI {
     /**
 
@@ -346,7 +344,7 @@ open class FakeAPI {
     open class func testEndpointParametersWithRequestBuilder(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "integer": integer?.encodeToJSON(),
             "int32": int32?.encodeToJSON(),
             "int64": int64?.encodeToJSON(),
@@ -365,7 +363,7 @@ open class FakeAPI {
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -484,19 +482,19 @@ open class FakeAPI {
     open class func testEnumParametersWithRequestBuilder(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "enum_form_string_array": enumFormStringArray,
             "enum_form_string": enumFormString?.rawValue
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "enum_query_string_array": enumQueryStringArray, 
-            "enum_query_string": enumQueryString?.rawValue, 
-            "enum_query_integer": enumQueryInteger?.rawValue, 
+            "enum_query_string_array": enumQueryStringArray,
+            "enum_query_string": enumQueryString?.rawValue,
+            "enum_query_integer": enumQueryInteger?.rawValue,
             "enum_query_double": enumQueryDouble?.rawValue
         ])
         let nillableHeaders: [String: Any?] = [
@@ -550,13 +548,13 @@ open class FakeAPI {
     open class func testGroupParametersWithRequestBuilder(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "required_string_group": requiredStringGroup.encodeToJSON(), 
-            "required_int64_group": requiredInt64Group.encodeToJSON(), 
-            "string_group": stringGroup?.encodeToJSON(), 
+            "required_string_group": requiredStringGroup.encodeToJSON(),
+            "required_int64_group": requiredInt64Group.encodeToJSON(),
+            "string_group": stringGroup?.encodeToJSON(),
             "int64_group": int64Group?.encodeToJSON()
         ])
         let nillableHeaders: [String: Any?] = [
@@ -576,7 +574,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - returns: Observable<Void>
      */
-    open class func testInlineAdditionalProperties(param: [String:String]) -> Observable<Void> {
+    open class func testInlineAdditionalProperties(param: [String: String]) -> Observable<Void> {
         return Observable.create { observer -> Disposable in
             testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in
                 if let error = error {
@@ -596,7 +594,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - returns: RequestBuilder<Void> 
      */
-    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String:String]) -> RequestBuilder<Void> {
+    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String: String]) -> RequestBuilder<Void> {
         let path = "/fake/inline-additionalProperties"
         let URLString = PetstoreClientAPI.basePath + path
         let parameters = JSONEncodingHelper.encodingParameters(forEncodableObject: param)
@@ -639,14 +637,14 @@ open class FakeAPI {
     open class func testJsonFormDataWithRequestBuilder(param: String, param2: String) -> RequestBuilder<Void> {
         let path = "/fake/jsonFormData"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "param": param,
             "param2": param2
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
index 2784d5cfb656a923123c5d1fe2073934c29a6763..a4e7d073c9ab0d3c3b9b11aae32daabfe5987a6e 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class FakeClassnameTags123API {
     /**
      To test class name in snake case
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
index b9ca8262f43fbc6c004cd4759bb722bf95b74171..fcbd3f3b0022ff1f1b9a52f9f24ca5bdecc5ac4f 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class PetAPI {
     /**
      Add a new pet to the store
@@ -90,8 +88,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
         let nillableHeaders: [String: Any?] = [
             "api_key": apiKey
@@ -147,8 +145,8 @@ open class PetAPI {
     open class func findPetsByStatusWithRequestBuilder(status: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByStatus"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "status": status
@@ -194,8 +192,8 @@ open class PetAPI {
     open class func findPetsByTagsWithRequestBuilder(tags: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByTags"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "tags": tags
@@ -244,8 +242,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Pet>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -333,14 +331,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "name": name,
             "status": status
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -389,14 +387,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "file": file
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -445,14 +443,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "requiredFile": requiredFile
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
index 4af70c925307b88aa38edfc17fcb6aa4b6b79617..6171b68c85da44a79f3b55657f21c5357fc301aa 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class StoreAPI {
     /**
      Delete purchase order by ID
@@ -45,8 +43,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -59,7 +57,7 @@ open class StoreAPI {
      
      - returns: Observable<[String:Int]>
      */
-    open class func getInventory() -> Observable<[String:Int]> {
+    open class func getInventory() -> Observable<[String: Int]> {
         return Observable.create { observer -> Disposable in
             getInventoryWithRequestBuilder().execute { (response, error) -> Void in
                 if let error = error {
@@ -84,14 +82,14 @@ open class StoreAPI {
        - name: api_key
      - returns: RequestBuilder<[String:Int]> 
      */
-    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String:Int]> {
+    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String: Int]> {
         let path = "/store/inventory"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
-        let requestBuilder: RequestBuilder<[String:Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+        let requestBuilder: RequestBuilder<[String: Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
 
         return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false)
     }
@@ -131,8 +129,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Order>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
index 999b7791db8d64c0e6dc4b55174dfe11d5b58edf..baeb80933a9c6c04f7e225601045b1781af8edda 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class UserAPI {
     /**
      Create user
@@ -160,8 +158,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -203,8 +201,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<User>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -246,11 +244,11 @@ open class UserAPI {
     open class func loginUserWithRequestBuilder(username: String, password: String) -> RequestBuilder<String> {
         let path = "/user/login"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "username": username, 
+            "username": username,
             "password": password
         ])
 
@@ -286,8 +284,8 @@ open class UserAPI {
     open class func logoutUserWithRequestBuilder() -> RequestBuilder<Void> {
         let path = "/user/logout"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
index dac40e9a31cfbf7c6194a337ddd9ab7cafb16b35..04ad02a5ce88e02b302bcdb3f9b02522a5509b5a 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
@@ -12,7 +12,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
         return AlamofireRequestBuilder<T>.self
     }
 
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type {
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type {
         return AlamofireDecodableRequestBuilder<T>.self
     }
 }
@@ -50,7 +50,7 @@ private struct SynchronizedDictionary<K: Hashable, V> {
 private var managerStore = SynchronizedDictionary<String, Alamofire.SessionManager>()
 
 open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
-    required public init(method: String, URLString: String, parameters: [String : Any]?, isBody: Bool, headers: [String : String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         super.init(method: method, URLString: URLString, parameters: parameters, isBody: isBody, headers: headers)
     }
 
@@ -88,17 +88,17 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
      May be overridden by a subclass if you want to control the request
      configuration (e.g. to override the cache policy).
      */
-    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String:String]) -> DataRequest {
+    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) -> DataRequest {
         return manager.request(URLString, method: method, parameters: parameters, encoding: encoding, headers: headers)
     }
 
     override open func execute(_ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
-        let managerId:String = UUID().uuidString
+        let managerId: String = UUID().uuidString
         // Create a new manager for each request to customize its request header
         let manager = createSessionManager()
         managerStore[managerId] = manager
 
-        let encoding:ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
+        let encoding: ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
 
         let xMethod = Alamofire.HTTPMethod(rawValue: method)
         let fileKeys = parameters == nil ? [] : parameters!.filter { $1 is NSURL }
@@ -111,8 +111,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
                     case let fileURL as URL:
                         if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
                             mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
-                        }
-                        else {
+                        } else {
                             mpForm.append(fileURL, withName: k)
                         }
                     case let string as String:
@@ -276,7 +275,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
         return httpHeaders
     }
 
-    fileprivate func getFileName(fromContentDisposition contentDisposition : String?) -> String? {
+    fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? {
 
         guard let contentDisposition = contentDisposition else {
             return nil
@@ -284,7 +283,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
         let items = contentDisposition.components(separatedBy: ";")
 
-        var filename : String? = nil
+        var filename: String? = nil
 
         for contentItem in items {
 
@@ -304,7 +303,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getPath(from url : URL) throws -> String {
+    fileprivate func getPath(from url: URL) throws -> String {
 
         guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else {
             throw DownloadException.requestMissingPath
@@ -318,7 +317,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getURL(from urlRequest : URLRequest) throws -> URL {
+    fileprivate func getURL(from urlRequest: URLRequest) throws -> URL {
 
         guard let url = urlRequest.url else {
             throw DownloadException.requestMissingURL
@@ -329,7 +328,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
 }
 
-fileprivate enum DownloadException : Error {
+private enum DownloadException: Error {
     case responseDataMissing
     case responseFailed
     case requestMissing
@@ -344,7 +343,7 @@ public enum AlamofireDecodableRequestBuilderError: Error {
     case generalError(Error)
 }
 
-open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilder<T> {
+open class AlamofireDecodableRequestBuilder<T: Decodable>: AlamofireRequestBuilder<T> {
 
     override fileprivate func processRequest(request: DataRequest, _ managerId: String, _ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
         if let credential = self.credential {
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
index 584de8c3d57a78a248749874fabd8245bf33f9fc..111d5a3a8cbe9afe5289cf58aa577d7c8f761a4a 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
@@ -13,7 +13,7 @@ open class CodableHelper {
 
     public static var dateformatter: DateFormatter?
 
-    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T : Decodable {
+    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable {
         var returnedDecodable: T? = nil
         var returnedError: Error? = nil
 
@@ -39,7 +39,7 @@ open class CodableHelper {
         return (returnedDecodable, returnedError)
     }
 
-    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T : Encodable {
+    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable {
         var returnedData: Data?
         var returnedError: Error? = nil
 
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Configuration.swift
index 516590da5d9e34183fdca8fef2901c7b53ab763b..e1ecb39726e7a8b435a6e688d95ddec9693fc3bc 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Configuration.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Configuration.swift
@@ -7,9 +7,9 @@
 import Foundation
 
 open class Configuration {
-	
+
 	// This value is used to configure the date formatter that is used to serialize dates into JSON format. 
 	// You must set it prior to encoding any dates, and it will only be read once. 
     public static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
-    
-}
\ No newline at end of file
+
+}
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Extensions.swift
index 8bf1829ba806b618d4e918b3c45a67c7a5a98803..24c128daadef77fdadd2629825a2d7ff04016e59 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Extensions.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Extensions.swift
@@ -112,24 +112,24 @@ extension String: CodingKey {
 
 extension KeyedEncodingContainerProtocol {
 
-    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T: Encodable {
         var arrayContainer = nestedUnkeyedContainer(forKey: key)
         try arrayContainer.encode(contentsOf: values)
     }
 
-    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable {
         if let values = values {
             try encodeArray(values, forKey: key)
         }
     }
 
-    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T : Encodable {
+    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T: Encodable {
         for (key, value) in pairs {
             try encode(value, forKey: key)
         }
     }
 
-    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T : Encodable {
+    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T: Encodable {
         if let pairs = pairs {
             try encodeMap(pairs)
         }
@@ -139,7 +139,7 @@ extension KeyedEncodingContainerProtocol {
 
 extension KeyedDecodingContainerProtocol {
 
-    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T : Decodable {
+    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable {
         var tmpArray = [T]()
 
         var nestedContainer = try nestedUnkeyedContainer(forKey: key)
@@ -151,7 +151,7 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T : Decodable {
+    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable {
         var tmpArray: [T]? = nil
 
         if contains(key) {
@@ -161,8 +161,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T : Decodable {
-        var map: [Self.Key : T] = [:]
+    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T: Decodable {
+        var map: [Self.Key: T] = [:]
 
         for key in allKeys {
             if !excludedKeys.contains(key) {
@@ -175,5 +175,3 @@ extension KeyedDecodingContainerProtocol {
     }
 
 }
-
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
index 70449515842de48fed6aec10ef246b1ad0f89e8b..3e68bb5d4a9b57609b955025cd250046c16fde0f 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
@@ -10,7 +10,7 @@ import Alamofire
 
 open class JSONEncodingHelper {
 
-    open class func encodingParameters<T:Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
+    open class func encodingParameters<T: Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
         var params: Parameters? = nil
 
         // Encode the Encodable object
@@ -39,5 +39,5 @@ open class JSONEncodingHelper {
 
         return params
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models.swift
index 408563890359088c1d97f24053ac1392706457bf..e87ce399c7c8b963ddee0f78a14a70a727751d1a 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models.swift
@@ -10,7 +10,7 @@ protocol JSONEncodable {
     func encodeToJSON() -> Any
 }
 
-public enum ErrorResponse : Error {
+public enum ErrorResponse: Error {
     case error(Int, Data?, Error)
 }
 
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift
index 796e46eca24765665ef582c8fd1a6fbac95f4ab6..94295c495c53b2868e08f0f091e7eaa6af3f480f 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesAnyType: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesAnyType: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Any] = [:]
+    public var additionalProperties: [String: Any] = [:]
 
     public subscript(key: String) -> Any? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesAnyType: Codable {
         additionalProperties = try container.decodeMap(Any.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift
index 5e58839b5a5f8329a444907d5bad016854da090e..cde9824ddb3ae7769d7978b047dbd49bf7e68cb7 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesArray: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesArray: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Array] = [:]
+    public var additionalProperties: [String: Array] = [:]
 
     public subscript(key: String) -> Array? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesArray: Codable {
         additionalProperties = try container.decodeMap(Array.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift
index d4c90829b4c767b0bf6daa85c3675bc5e5c56313..76791a9ddd3eb37dd793d196c8b719712c0b3dc9 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesBoolean: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesBoolean: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Bool] = [:]
+    public var additionalProperties: [String: Bool] = [:]
 
     public subscript(key: String) -> Bool? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesBoolean: Codable {
         additionalProperties = try container.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
index 4db39adae84cafaa338f812343439b8f772de667..83a06951ccd657fb6d41f10cf42fc3b347213d3b 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
@@ -7,23 +7,19 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesClass: Codable {
 
-    public var mapString: [String:String]?
-    public var mapMapString: [String:[String:String]]?
+    public var mapString: [String: String]?
+    public var mapMapString: [String: [String: String]]?
 
-    public init(mapString: [String:String]?, mapMapString: [String:[String:String]]?) {
+    public init(mapString: [String: String]?, mapMapString: [String: [String: String]]?) {
         self.mapString = mapString
         self.mapMapString = mapMapString
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapString = "map_string"
         case mapMapString = "map_map_string"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift
index b03bbe445653006ff99d546109fdf846f9e68b3c..4a0f2acaa4175d9bf1df53b47bb359fae7742d3f 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesInteger: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesInteger: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Int] = [:]
+    public var additionalProperties: [String: Int] = [:]
 
     public subscript(key: String) -> Int? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesInteger: Codable {
         additionalProperties = try container.decodeMap(Int.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift
index 9701d54c9b25f78b5bced7c3426c4d21b26a16bd..95e491000ab7d019a9ef8e5786c6c2d984ca128c 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesNumber: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesNumber: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Double] = [:]
+    public var additionalProperties: [String: Double] = [:]
 
     public subscript(key: String) -> Double? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesNumber: Codable {
         additionalProperties = try container.decodeMap(Double.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift
index c6e1e670b8cc61babbb2246f382423e425fab1c4..f45888a410196796958c7a6483c0f254c86c3032 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesObject: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesObject: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Dictionary] = [:]
+    public var additionalProperties: [String: Dictionary] = [:]
 
     public subscript(key: String) -> Dictionary? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesObject: Codable {
         additionalProperties = try container.decodeMap(Dictionary.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift
index 6128dce7d422e91dd79f6d293e2e1c516593aab9..7af63cc7152e17d728e72047916b7a664adc2f2c 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesString: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesString: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:String] = [:]
+    public var additionalProperties: [String: String] = [:]
 
     public subscript(key: String) -> String? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesString: Codable {
         additionalProperties = try container.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
index 7221a1be099dd896259e2c830046272e01191d98..5ed9f31e2a364d0bf7a25bdf70cecb48af6ab5c4 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Animal: Codable {
 
     public var className: String
@@ -19,6 +17,4 @@ public struct Animal: Codable {
         self.color = color
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
index e7bea63f8ed28132865ea4d3c23eab55666cf4f6..e09b0e9efdc8ca7798114f24aff21f57e8f9fabd 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
@@ -7,5 +7,4 @@
 
 import Foundation
 
-
 public typealias AnimalFarm = [Animal]
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
index a22e9aaebbb06bf18c9bf8a5893ab3e0ece6945d..ec270da8907438877ee5cc303b093ceba3993297 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ApiResponse: Codable {
 
     public var code: Int?
@@ -21,6 +19,4 @@ public struct ApiResponse: Codable {
         self.message = message
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
index 4e5a5ca1445d9faf133bded5a5c89297ea7c5822..3843287630b100a8210c60aff75d4286a44e46a7 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfArrayOfNumberOnly: Codable {
 
     public var arrayArrayNumber: [[Double]]?
@@ -17,10 +15,8 @@ public struct ArrayOfArrayOfNumberOnly: Codable {
         self.arrayArrayNumber = arrayArrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayArrayNumber = "ArrayArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
index 7d059d36833987dc60886960363e11e328dbcee2..f8b198e81f50d4cf237000ed8dae7d47779f8bf4 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfNumberOnly: Codable {
 
     public var arrayNumber: [Double]?
@@ -17,10 +15,8 @@ public struct ArrayOfNumberOnly: Codable {
         self.arrayNumber = arrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayNumber = "ArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
index 9c56fed50c2e79b759cdaceb078c82da316b463d..67f7f7e5151fd3bca131124815c75a0d9f8ade28 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayTest: Codable {
 
     public var arrayOfString: [String]?
@@ -21,12 +19,10 @@ public struct ArrayTest: Codable {
         self.arrayArrayOfModel = arrayArrayOfModel
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayOfString = "array_of_string"
         case arrayArrayOfInteger = "array_array_of_integer"
         case arrayArrayOfModel = "array_array_of_model"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
index 98cda23dac9e7415bc9a1a2cd1dd98fa389d885d..d576b50b1c9c1f2c4c7b719c7800e4da183e49ba 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Capitalization: Codable {
 
     public var smallCamel: String?
@@ -28,7 +26,7 @@ public struct Capitalization: Codable {
         self.ATT_NAME = ATT_NAME
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case smallCamel
         case capitalCamel = "CapitalCamel"
         case smallSnake = "small_Snake"
@@ -37,6 +35,4 @@ public struct Capitalization: Codable {
         case ATT_NAME
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
index a116d964ea84b543abc96dd5273ab37c1fb897ee..7ab887f3113f1dd39f42b1019d8f58d45325f288 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Cat: Codable {
 
     public var className: String
@@ -21,6 +19,4 @@ public struct Cat: Codable {
         self.declawed = declawed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..a51ad0dffab1ba129591056cd816575af0e1ea09
--- /dev/null
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
@@ -0,0 +1,18 @@
+//
+// CatAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct CatAllOf: Codable {
+
+    public var declawed: Bool?
+
+    public init(declawed: Bool?) {
+        self.declawed = declawed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
index e8c489be460402c792f2379641088fae48de315f..eb8f7e5e1974989058473e4492c25c0004f1078c 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Category: Codable {
 
     public var id: Int64?
@@ -19,6 +17,4 @@ public struct Category: Codable {
         self.name = name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
index f673ed127cd8a545ae575acfcdee044768f8ae12..28cb30ce7b4bee968edc3cef6724572481551b91 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model with \&quot;_class\&quot; property */
 
 public struct ClassModel: Codable {
@@ -18,6 +17,4 @@ public struct ClassModel: Codable {
         self._class = _class
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
index 51390b6c4eac28e4df699b05a826a5da163ad0e4..00245ca37280eea9c87184eb0f40fb8bf03b81f2 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Client: Codable {
 
     public var client: String?
@@ -17,6 +15,4 @@ public struct Client: Codable {
         self.client = client
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
index 239ce74dcc2166d80a516ed215f31c1ad52fa930..492c1228008eb782ea0f927f65259ce2c7999d24 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Dog: Codable {
 
     public var className: String
@@ -21,6 +19,4 @@ public struct Dog: Codable {
         self.breed = breed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..7786f8acc5ae7d0de7de7248ef5a94d4d16f0a17
--- /dev/null
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
@@ -0,0 +1,18 @@
+//
+// DogAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct DogAllOf: Codable {
+
+    public var breed: String?
+
+    public init(breed: String?) {
+        self.breed = breed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
index 8713961520e11abb6206697029d5a1fd6be66f00..5034ff0b8c684d21a45c635f4a4b9de56fb3cda1 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumArrays: Codable {
 
     public enum JustSymbol: String, Codable {
@@ -27,11 +25,9 @@ public struct EnumArrays: Codable {
         self.arrayEnum = arrayEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justSymbol = "just_symbol"
         case arrayEnum = "array_enum"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
index 7280a621fec75a24fafa361025faea5190af9f45..3c1dfcac577d12c69319e42cac6ea851bf5dcf28 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum EnumClass: String, Codable {
     case abc = "_abc"
     case efg = "-efg"
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
index 0f546c76a2183956d59c7d5d7bbc345ce58e1d8b..6db9b34d183ba0f97c10db4a22d60e85b5b2a54c 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumTest: Codable {
 
     public enum EnumString: String, Codable {
@@ -43,7 +41,7 @@ public struct EnumTest: Codable {
         self.outerEnum = outerEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case enumString = "enum_string"
         case enumStringRequired = "enum_string_required"
         case enumInteger = "enum_integer"
@@ -51,6 +49,4 @@ public struct EnumTest: Codable {
         case outerEnum
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/File.swift
index c8bd1f19589b528c826d65c456ecf8d9cc974097..ea3520f053dd690ade411e20d80082a7acf57785 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/File.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/File.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Must be named &#x60;File&#x60; for test. */
 
 public struct File: Codable {
@@ -19,6 +18,4 @@ public struct File: Codable {
         self.sourceURI = sourceURI
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
index 64d025068027aa26974661ff1af66421b86d4ab8..532f1457939af300b65f89821673cf1951ec2f0b 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FileSchemaTestClass: Codable {
 
     public var file: File?
@@ -19,6 +17,4 @@ public struct FileSchemaTestClass: Codable {
         self.files = files
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
index faa091b0658c6bb4c9d7cd06d8942eac1c19d382..20bd6d103b3dc87ffa6d7f38b21d957318628930 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FormatTest: Codable {
 
     public var integer: Int?
@@ -41,6 +39,4 @@ public struct FormatTest: Codable {
         self.password = password
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
index 554aee1081aa470de93a2c36c484b6427a67698a..906ddb06fb170e5de30f07754fce3efc4f512ee1 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct HasOnlyReadOnly: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct HasOnlyReadOnly: Codable {
         self.foo = foo
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/List.swift
index 8997340ff4befe18cc8f2754c7ea92620406571c..08d59953873e4cf8f3c5c133c58cf78c4a70f41e 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/List.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/List.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct List: Codable {
 
     public var _123list: String?
@@ -17,10 +15,8 @@ public struct List: Codable {
         self._123list = _123list
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _123list = "123-list"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
index 2d3a45d35a0cb38fad72874cee84e18f4c874014..3a10a7dfcaf6078594c592d7714c5df8d194ba28 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
@@ -7,33 +7,29 @@
 
 import Foundation
 
-
-
 public struct MapTest: Codable {
 
     public enum MapOfEnumString: String, Codable {
         case upper = "UPPER"
         case lower = "lower"
     }
-    public var mapMapOfString: [String:[String:String]]?
-    public var mapOfEnumString: [String:String]?
-    public var directMap: [String:Bool]?
+    public var mapMapOfString: [String: [String: String]]?
+    public var mapOfEnumString: [String: String]?
+    public var directMap: [String: Bool]?
     public var indirectMap: StringBooleanMap?
 
-    public init(mapMapOfString: [String:[String:String]]?, mapOfEnumString: [String:String]?, directMap: [String:Bool]?, indirectMap: StringBooleanMap?) {
+    public init(mapMapOfString: [String: [String: String]]?, mapOfEnumString: [String: String]?, directMap: [String: Bool]?, indirectMap: StringBooleanMap?) {
         self.mapMapOfString = mapMapOfString
         self.mapOfEnumString = mapOfEnumString
         self.directMap = directMap
         self.indirectMap = indirectMap
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapMapOfString = "map_map_of_string"
         case mapOfEnumString = "map_of_enum_string"
         case directMap = "direct_map"
         case indirectMap = "indirect_map"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
index 7116108fd7a3879ef9a8337cdd7ff8d8295a825e..c3deb2f28932f5d0ab338f3da2ac398de24a8822 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
@@ -7,20 +7,16 @@
 
 import Foundation
 
-
-
 public struct MixedPropertiesAndAdditionalPropertiesClass: Codable {
 
     public var uuid: UUID?
     public var dateTime: Date?
-    public var map: [String:Animal]?
+    public var map: [String: Animal]?
 
-    public init(uuid: UUID?, dateTime: Date?, map: [String:Animal]?) {
+    public init(uuid: UUID?, dateTime: Date?, map: [String: Animal]?) {
         self.uuid = uuid
         self.dateTime = dateTime
         self.map = map
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
index fc1d0606b7ba1788451c5add909cf4afb64031c9..7ed6aad907be01122bb19752a3622dc002d026be 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name starting with number */
 
 public struct Model200Response: Codable {
@@ -20,11 +19,9 @@ public struct Model200Response: Codable {
         self._class = _class
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case _class = "class"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
index cc165d767d91a0ac79941c3a1af5208e192941c9..ce9ffe4fb38e525fea73a67c24199de77214cb64 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name same as property name */
 
 public struct Name: Codable {
@@ -24,13 +23,11 @@ public struct Name: Codable {
         self._123number = _123number
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case snakeCase = "snake_case"
         case property
         case _123number = "123Number"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
index e6fb206093aa29bfd8254cffb0026bf04436d925..abd2269e8e76cbfae26cdc3c7582d486a13cfb60 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct NumberOnly: Codable {
 
     public var justNumber: Double?
@@ -17,10 +15,8 @@ public struct NumberOnly: Codable {
         self.justNumber = justNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justNumber = "JustNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
index 83c3b85e6629e9454007ba09246811d282e7c875..a6e1b1d2e5e46e4d5d82399449b966f00b38a59b 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Order: Codable {
 
     public enum Status: String, Codable {
@@ -33,6 +31,4 @@ public struct Order: Codable {
         self.complete = complete
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
index edc4523d9f0090260720b507ff61ac29df79e4ad..49aec001c5dbaeadfc67a0cfa9d2ad79fa3c20fb 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct OuterComposite: Codable {
 
     public var myNumber: Double?
@@ -21,12 +19,10 @@ public struct OuterComposite: Codable {
         self.myBoolean = myBoolean
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case myNumber = "my_number"
         case myString = "my_string"
         case myBoolean = "my_boolean"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
index bd1643d279edd46285735e726922a03f14b4c3e7..9f80fc95ecf0b11f47c6ec2f1e0e5a9a3ef000b0 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum OuterEnum: String, Codable {
     case placed = "placed"
     case approved = "approved"
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
index 5e39abae6c8f55dbfaf300156453a199e86648a2..af60a550bb19ed846146784ae551c2406d31018f 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Pet: Codable {
 
     public enum Status: String, Codable {
@@ -33,6 +31,4 @@ public struct Pet: Codable {
         self.status = status
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
index 48b655a5b0aa2698abf0467fa038429ed3644075..0acd21fd10000317ffc9f96840a49b3dd538d0c7 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ReadOnlyFirst: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct ReadOnlyFirst: Codable {
         self.baz = baz
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
index de4b218999b7fda43e046a32e838f7c5807cd2d8..076082af842f1a3f7c6c1e19bffe9e3aecda4a31 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing reserved words */
 
 public struct Return: Codable {
@@ -18,10 +17,8 @@ public struct Return: Codable {
         self._return = _return
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _return = "return"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
index 213d896ba9882c8f8751f37efa757035910dab55..e79fc45c0e914a027b53334468238a95af0c36dd 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct SpecialModelName: Codable {
 
     public var specialPropertyName: Int64?
@@ -17,10 +15,8 @@ public struct SpecialModelName: Codable {
         self.specialPropertyName = specialPropertyName
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case specialPropertyName = "$special[property.name]"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
index ae15e87d94bba90e3d51a7c4275c06e65fbc4987..3f1237fee477a298b1d99cef8062371e2f101f59 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
@@ -7,12 +7,9 @@
 
 import Foundation
 
-
-
 public struct StringBooleanMap: Codable {
 
-
-    public var additionalProperties: [String:Bool] = [:]
+    public var additionalProperties: [String: Bool] = [:]
 
     public subscript(key: String) -> Bool? {
         get {
@@ -45,7 +42,4 @@ public struct StringBooleanMap: Codable {
         additionalProperties = try container.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
index 32ee33a1a1e0dc98c253db9c2c387b6f39d2eadc..4dd8a9a9f5a0fc547c88401b39caf0f00cddd61d 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Tag: Codable {
 
     public var id: Int64?
@@ -19,6 +17,4 @@ public struct Tag: Codable {
         self.name = name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
index be1afdf0266c38363e96cea1ef97eebe15365d81..bf0006e1a266cc3b1271bf775129caf67edb9639 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderDefault: Codable {
 
     public var stringItem: String = "what"
@@ -25,7 +23,7 @@ public struct TypeHolderDefault: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderDefault: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
index f46c8952e13e4eb39f0f7ea7d6bf5b00357c651f..602a2a6d185a321f96aec3e3b409bd85f7272776 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderExample: Codable {
 
     public var stringItem: String
@@ -25,7 +23,7 @@ public struct TypeHolderExample: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderExample: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/User.swift
index a61b5844201ea15d037424b32518b1c2d259ee4a..79f271ed73564b8af07f2698e649f38062255ce7 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/User.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/User.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct User: Codable {
 
     public var id: Int64?
@@ -32,6 +30,4 @@ public struct User: Codable {
         self.userStatus = userStatus
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
index e1b1ace8b153460ad9ee1066d0d45bf5f27ff152..aa016683503ba8661b79f61a18b7fa0cae4d2b19 100644
--- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
+++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct XmlItem: Codable {
 
     public var attributeString: String?
@@ -73,7 +71,7 @@ public struct XmlItem: Codable {
         self.prefixNsWrappedArray = prefixNsWrappedArray
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case attributeString = "attribute_string"
         case attributeNumber = "attribute_number"
         case attributeInteger = "attribute_integer"
@@ -105,6 +103,4 @@ public struct XmlItem: Codable {
         case prefixNsWrappedArray = "prefix_ns_wrapped_array"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/README.md b/samples/client/petstore/swift4/rxswift/README.md
index 1e7f0a59ea01c4fc07d3b267963d7e87c9191142..0711eb870547e8af6fe7f4c1aa32785f0e89c278 100644
--- a/samples/client/petstore/swift4/rxswift/README.md
+++ b/samples/client/petstore/swift4/rxswift/README.md
@@ -73,10 +73,12 @@ Class | Method | HTTP request | Description
  - [ArrayTest](docs/ArrayTest.md)
  - [Capitalization](docs/Capitalization.md)
  - [Cat](docs/Cat.md)
+ - [CatAllOf](docs/CatAllOf.md)
  - [Category](docs/Category.md)
  - [ClassModel](docs/ClassModel.md)
  - [Client](docs/Client.md)
  - [Dog](docs/Dog.md)
+ - [DogAllOf](docs/DogAllOf.md)
  - [EnumArrays](docs/EnumArrays.md)
  - [EnumClass](docs/EnumClass.md)
  - [EnumTest](docs/EnumTest.md)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift
index 2fcc05ca0659ce732939876f6aec46e9ee36916e..a411b7749107c95215f1c2058ba4b15492fd1a08 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift
@@ -135,8 +135,7 @@ public func request(
     parameters: Parameters? = nil,
     encoding: ParameterEncoding = URLEncoding.default,
     headers: HTTPHeaders? = nil)
-    -> DataRequest
-{
+    -> DataRequest {
     return SessionManager.default.request(
         url,
         method: method,
@@ -183,8 +182,7 @@ public func download(
     encoding: ParameterEncoding = URLEncoding.default,
     headers: HTTPHeaders? = nil,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(
         url,
         method: method,
@@ -209,8 +207,7 @@ public func download(
 public func download(
     _ urlRequest: URLRequestConvertible,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(urlRequest, to: destination)
 }
 
@@ -239,8 +236,7 @@ public func download(
 public func download(
     resumingWith resumeData: Data,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(resumingWith: resumeData, to: destination)
 }
 
@@ -263,8 +259,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(fileURL, to: url, method: method, headers: headers)
 }
 
@@ -297,8 +292,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(data, to: url, method: method, headers: headers)
 }
 
@@ -331,8 +325,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(stream, to: url, method: method, headers: headers)
 }
 
@@ -379,8 +372,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil,
-    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?)
-{
+    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) {
     return SessionManager.default.upload(
         multipartFormData: multipartFormData,
         usingThreshold: encodingMemoryThreshold,
@@ -416,8 +408,7 @@ public func upload(
     multipartFormData: @escaping (MultipartFormData) -> Void,
     usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold,
     with urlRequest: URLRequestConvertible,
-    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?)
-{
+    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) {
     return SessionManager.default.upload(
         multipartFormData: multipartFormData,
         usingThreshold: encodingMemoryThreshold,
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift
index 057e68b97727c01241e4857c64b1866eae932000..85a0685748e344c1beca21d59480facfeab8820d 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift
@@ -275,8 +275,7 @@ open class MultipartFormData {
             }
 
             bodyContentLength = fileSize.uint64Value
-        }
-        catch {
+        } catch {
             setBodyPartError(withReason: .bodyPartFileSizeQueryFailedWithError(forURL: fileURL, error: error))
             return
         }
@@ -312,8 +311,7 @@ open class MultipartFormData {
         withLength length: UInt64,
         name: String,
         fileName: String,
-        mimeType: String)
-    {
+        mimeType: String) {
         let headers = contentHeaders(withName: name, fileName: fileName, mimeType: mimeType)
         append(stream, withLength: length, headers: headers)
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift
index 3ff2e7fc2774ab233b144cd412be52fa483a2b8c..60bda83d2ff9dc2e0a5f11b9f316164fd1313af3 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift
@@ -146,8 +146,7 @@ open class NetworkReachabilityManager {
         context.info = Unmanaged.passUnretained(self).toOpaque()
 
         let callbackEnabled = SCNetworkReachabilitySetCallback(
-            reachability,
-            { (_, flags, info) in
+            reachability, { (_, flags, info) in
                 let reachability = Unmanaged<NetworkReachabilityManager>.fromOpaque(info!).takeUnretainedValue()
                 reachability.notifyListener(flags)
             },
@@ -216,8 +215,7 @@ extension NetworkReachabilityManager.NetworkReachabilityStatus: Equatable {}
 public func ==(
     lhs: NetworkReachabilityManager.NetworkReachabilityStatus,
     rhs: NetworkReachabilityManager.NetworkReachabilityStatus)
-    -> Bool
-{
+    -> Bool {
     switch (lhs, rhs) {
     case (.unknown, .unknown):
         return true
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift
index 4a54f2dd00b18865475c0afa0aab0d0a8dbea043..344a048cad8b376b9e14de8176630d56523ac8d0 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift
@@ -435,8 +435,7 @@ public struct PropertyListEncoding: ParameterEncoding {
     /// - returns: The new `PropertyListEncoding` instance.
     public init(
         format: PropertyListSerialization.PropertyListFormat = .xml,
-        options: PropertyListSerialization.WriteOptions = 0)
-    {
+        options: PropertyListSerialization.WriteOptions = 0) {
         self.format = format
         self.options = options
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Request.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Request.swift
index ea43411377c0a506befbea6fdee7d18c0f15abc8..18b83a0e73252da6898d7f7fb8031995a80759d3 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Request.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Request.swift
@@ -161,8 +161,7 @@ open class Request {
         user: String,
         password: String,
         persistence: URLCredential.Persistence = .forSession)
-        -> Self
-    {
+        -> Self {
         let credential = URLCredential(user: user, password: password, persistence: persistence)
         return authenticate(usingCredential: credential)
     }
@@ -538,8 +537,7 @@ open class DownloadRequest: Request {
     open class func suggestedDownloadDestination(
         for directory: FileManager.SearchPathDirectory = .documentDirectory,
         in domain: FileManager.SearchPathDomainMask = .userDomainMask)
-        -> DownloadFileDestination
-    {
+        -> DownloadFileDestination {
         return { temporaryURL, response in
             let directoryURLs = FileManager.default.urls(for: directory, in: domain)
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Response.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Response.swift
index 74b1ef54d03650e44ab64cff8eec9f399a170044..23571383bae882f6aa40766ae674ed5ebb100db0 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Response.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Response.swift
@@ -58,8 +58,7 @@ public struct DefaultDataResponse {
         data: Data?,
         error: Error?,
         timeline: Timeline = Timeline(),
-        metrics: AnyObject? = nil)
-    {
+        metrics: AnyObject? = nil) {
         self.request = request
         self.response = response
         self.data = data
@@ -109,8 +108,7 @@ public struct DataResponse<Value> {
         response: HTTPURLResponse?,
         data: Data?,
         result: Result<Value>,
-        timeline: Timeline = Timeline())
-    {
+        timeline: Timeline = Timeline()) {
         self.request = request
         self.response = response
         self.data = data
@@ -296,8 +294,7 @@ public struct DefaultDownloadResponse {
         resumeData: Data?,
         error: Error?,
         timeline: Timeline = Timeline(),
-        metrics: AnyObject? = nil)
-    {
+        metrics: AnyObject? = nil) {
         self.request = request
         self.response = response
         self.temporaryURL = temporaryURL
@@ -359,8 +356,7 @@ public struct DownloadResponse<Value> {
         destinationURL: URL?,
         resumeData: Data?,
         result: Result<Value>,
-        timeline: Timeline = Timeline())
-    {
+        timeline: Timeline = Timeline()) {
         self.request = request
         self.response = response
         self.temporaryURL = temporaryURL
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift
index 3333726d5c72c8e9f4582ce2e3df04c7f06a8736..fd049edac1c98978c3e15b462f445eb82975a5b5 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift
@@ -144,8 +144,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         responseSerializer: T,
         completionHandler: @escaping (DataResponse<T.SerializedObject>) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             let result = responseSerializer.serializeResponse(
                 self.request,
@@ -182,8 +181,7 @@ extension DownloadRequest {
     public func response(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DefaultDownloadResponse) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             (queue ?? DispatchQueue.main).async {
                 var downloadResponse = DefaultDownloadResponse(
@@ -218,8 +216,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         responseSerializer: T,
         completionHandler: @escaping (DownloadResponse<T.SerializedObject>) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             let result = responseSerializer.serializeResponse(
                 self.request,
@@ -289,8 +286,7 @@ extension DataRequest {
     public func responseData(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DataResponse<Data>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.dataResponseSerializer(),
@@ -329,8 +325,7 @@ extension DownloadRequest {
     public func responseData(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DownloadResponse<Data>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.dataResponseSerializer(),
@@ -356,8 +351,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<String>
-    {
+        -> Result<String> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success("") }
@@ -411,8 +405,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         encoding: String.Encoding? = nil,
         completionHandler: @escaping (DataResponse<String>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.stringResponseSerializer(encoding: encoding),
@@ -459,8 +452,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         encoding: String.Encoding? = nil,
         completionHandler: @escaping (DownloadResponse<String>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.stringResponseSerializer(encoding: encoding),
@@ -486,8 +478,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<Any>
-    {
+        -> Result<Any> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) }
@@ -514,8 +505,7 @@ extension DataRequest {
     /// - returns: A JSON object response serializer.
     public static func jsonResponseSerializer(
         options: JSONSerialization.ReadingOptions = .allowFragments)
-        -> DataResponseSerializer<Any>
-    {
+        -> DataResponseSerializer<Any> {
         return DataResponseSerializer { _, response, data, error in
             return Request.serializeResponseJSON(options: options, response: response, data: data, error: error)
         }
@@ -532,8 +522,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         options: JSONSerialization.ReadingOptions = .allowFragments,
         completionHandler: @escaping (DataResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.jsonResponseSerializer(options: options),
@@ -551,8 +540,7 @@ extension DownloadRequest {
     /// - returns: A JSON object response serializer.
     public static func jsonResponseSerializer(
         options: JSONSerialization.ReadingOptions = .allowFragments)
-        -> DownloadResponseSerializer<Any>
-    {
+        -> DownloadResponseSerializer<Any> {
         return DownloadResponseSerializer { _, response, fileURL, error in
             guard error == nil else { return .failure(error!) }
 
@@ -580,8 +568,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         options: JSONSerialization.ReadingOptions = .allowFragments,
         completionHandler: @escaping (DownloadResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.jsonResponseSerializer(options: options),
@@ -607,8 +594,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<Any>
-    {
+        -> Result<Any> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) }
@@ -635,8 +621,7 @@ extension DataRequest {
     /// - returns: A property list object response serializer.
     public static func propertyListResponseSerializer(
         options: PropertyListSerialization.ReadOptions = [])
-        -> DataResponseSerializer<Any>
-    {
+        -> DataResponseSerializer<Any> {
         return DataResponseSerializer { _, response, data, error in
             return Request.serializeResponsePropertyList(options: options, response: response, data: data, error: error)
         }
@@ -653,8 +638,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         options: PropertyListSerialization.ReadOptions = [],
         completionHandler: @escaping (DataResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.propertyListResponseSerializer(options: options),
@@ -672,8 +656,7 @@ extension DownloadRequest {
     /// - returns: A property list object response serializer.
     public static func propertyListResponseSerializer(
         options: PropertyListSerialization.ReadOptions = [])
-        -> DownloadResponseSerializer<Any>
-    {
+        -> DownloadResponseSerializer<Any> {
         return DownloadResponseSerializer { _, response, fileURL, error in
             guard error == nil else { return .failure(error!) }
 
@@ -701,8 +684,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         options: PropertyListSerialization.ReadOptions = [],
         completionHandler: @escaping (DownloadResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.propertyListResponseSerializer(options: options),
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift
index 7f44c8d2c6aa425819fa8e6cb388051fcf84cd65..d50e941fabdf6d02e02168cb2ff2fe85f3799aab 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift
@@ -249,7 +249,6 @@ public enum ServerTrustPolicy {
             let unspecified = SecTrustResultType.unspecified
             let proceed = SecTrustResultType.proceed
 
-
             isValid = result == unspecified || result == proceed
         }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift
index 03bcb7ced6c8349f54e8ef3a557b2052fa182708..17d0d9f1506a6523301f7d948cb2b0ee60e4a8f2 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift
@@ -255,8 +255,7 @@ extension SessionDelegate: URLSessionDelegate {
     open func urlSession(
         _ session: URLSession,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         guard sessionDidReceiveChallengeWithCompletion == nil else {
             sessionDidReceiveChallengeWithCompletion?(session, challenge, completionHandler)
             return
@@ -315,8 +314,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         task: URLSessionTask,
         willPerformHTTPRedirection response: HTTPURLResponse,
         newRequest request: URLRequest,
-        completionHandler: @escaping (URLRequest?) -> Void)
-    {
+        completionHandler: @escaping (URLRequest?) -> Void) {
         guard taskWillPerformHTTPRedirectionWithCompletion == nil else {
             taskWillPerformHTTPRedirectionWithCompletion?(session, task, response, request, completionHandler)
             return
@@ -342,8 +340,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         _ session: URLSession,
         task: URLSessionTask,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         guard taskDidReceiveChallengeWithCompletion == nil else {
             taskDidReceiveChallengeWithCompletion?(session, task, challenge, completionHandler)
             return
@@ -372,8 +369,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
     open func urlSession(
         _ session: URLSession,
         task: URLSessionTask,
-        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void)
-    {
+        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) {
         guard taskNeedNewBodyStreamWithCompletion == nil else {
             taskNeedNewBodyStreamWithCompletion?(session, task, completionHandler)
             return
@@ -398,8 +394,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         task: URLSessionTask,
         didSendBodyData bytesSent: Int64,
         totalBytesSent: Int64,
-        totalBytesExpectedToSend: Int64)
-    {
+        totalBytesExpectedToSend: Int64) {
         if let taskDidSendBodyData = taskDidSendBodyData {
             taskDidSendBodyData(session, task, bytesSent, totalBytesSent, totalBytesExpectedToSend)
         } else if let delegate = self[task]?.delegate as? UploadTaskDelegate {
@@ -512,8 +507,7 @@ extension SessionDelegate: URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         didReceive response: URLResponse,
-        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void)
-    {
+        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
         guard dataTaskDidReceiveResponseWithCompletion == nil else {
             dataTaskDidReceiveResponseWithCompletion?(session, dataTask, response, completionHandler)
             return
@@ -536,8 +530,7 @@ extension SessionDelegate: URLSessionDataDelegate {
     open func urlSession(
         _ session: URLSession,
         dataTask: URLSessionDataTask,
-        didBecome downloadTask: URLSessionDownloadTask)
-    {
+        didBecome downloadTask: URLSessionDownloadTask) {
         if let dataTaskDidBecomeDownloadTask = dataTaskDidBecomeDownloadTask {
             dataTaskDidBecomeDownloadTask(session, dataTask, downloadTask)
         } else {
@@ -573,8 +566,7 @@ extension SessionDelegate: URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         willCacheResponse proposedResponse: CachedURLResponse,
-        completionHandler: @escaping (CachedURLResponse?) -> Void)
-    {
+        completionHandler: @escaping (CachedURLResponse?) -> Void) {
         guard dataTaskWillCacheResponseWithCompletion == nil else {
             dataTaskWillCacheResponseWithCompletion?(session, dataTask, proposedResponse, completionHandler)
             return
@@ -608,8 +600,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
     open func urlSession(
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
-        didFinishDownloadingTo location: URL)
-    {
+        didFinishDownloadingTo location: URL) {
         if let downloadTaskDidFinishDownloadingToURL = downloadTaskDidFinishDownloadingToURL {
             downloadTaskDidFinishDownloadingToURL(session, downloadTask, location)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -632,8 +623,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
         downloadTask: URLSessionDownloadTask,
         didWriteData bytesWritten: Int64,
         totalBytesWritten: Int64,
-        totalBytesExpectedToWrite: Int64)
-    {
+        totalBytesExpectedToWrite: Int64) {
         if let downloadTaskDidWriteData = downloadTaskDidWriteData {
             downloadTaskDidWriteData(session, downloadTask, bytesWritten, totalBytesWritten, totalBytesExpectedToWrite)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -661,8 +651,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
         didResumeAtOffset fileOffset: Int64,
-        expectedTotalBytes: Int64)
-    {
+        expectedTotalBytes: Int64) {
         if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset {
             downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -716,8 +705,7 @@ extension SessionDelegate: URLSessionStreamDelegate {
         _ session: URLSession,
         streamTask: URLSessionStreamTask,
         didBecome inputStream: InputStream,
-        outputStream: OutputStream)
-    {
+        outputStream: OutputStream) {
         streamTaskDidBecomeInputAndOutputStreams?(session, streamTask, inputStream, outputStream)
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift
index 8779efdaa6754e308a65b51a72e1510b7bfb7dc8..8c10706677257501589af7f89b25b7d4dab12189 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift
@@ -166,8 +166,7 @@ open class SessionManager {
     public init(
         configuration: URLSessionConfiguration = URLSessionConfiguration.default,
         delegate: SessionDelegate = SessionDelegate(),
-        serverTrustPolicyManager: ServerTrustPolicyManager? = nil)
-    {
+        serverTrustPolicyManager: ServerTrustPolicyManager? = nil) {
         self.delegate = delegate
         self.session = URLSession(configuration: configuration, delegate: delegate, delegateQueue: nil)
 
@@ -185,8 +184,7 @@ open class SessionManager {
     public init?(
         session: URLSession,
         delegate: SessionDelegate,
-        serverTrustPolicyManager: ServerTrustPolicyManager? = nil)
-    {
+        serverTrustPolicyManager: ServerTrustPolicyManager? = nil) {
         guard delegate === session.delegate else { return nil }
 
         self.delegate = delegate
@@ -229,8 +227,7 @@ open class SessionManager {
         parameters: Parameters? = nil,
         encoding: ParameterEncoding = URLEncoding.default,
         headers: HTTPHeaders? = nil)
-        -> DataRequest
-    {
+        -> DataRequest {
         var originalRequest: URLRequest?
 
         do {
@@ -320,8 +317,7 @@ open class SessionManager {
         encoding: ParameterEncoding = URLEncoding.default,
         headers: HTTPHeaders? = nil,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             let encodedURLRequest = try encoding.encode(urlRequest, with: parameters)
@@ -347,8 +343,7 @@ open class SessionManager {
     open func download(
         _ urlRequest: URLRequestConvertible,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let urlRequest = try urlRequest.asURLRequest()
             return download(.request(urlRequest), to: destination)
@@ -384,8 +379,7 @@ open class SessionManager {
     open func download(
         resumingWith resumeData: Data,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         return download(.resumeData(resumeData), to: destination)
     }
 
@@ -394,8 +388,7 @@ open class SessionManager {
     private func download(
         _ downloadable: DownloadRequest.Downloadable,
         to destination: DownloadRequest.DownloadFileDestination?)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let task = try downloadable.task(session: session, adapter: adapter, queue: queue)
             let download = DownloadRequest(session: session, requestTask: .download(downloadable, task))
@@ -416,8 +409,7 @@ open class SessionManager {
         _ downloadable: DownloadRequest.Downloadable?,
         to destination: DownloadRequest.DownloadFileDestination?,
         failedWith error: Error)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         var downloadTask: Request.RequestTask = .download(nil, nil)
 
         if let downloadable = downloadable {
@@ -458,8 +450,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(fileURL, with: urlRequest)
@@ -504,8 +495,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(data, with: urlRequest)
@@ -550,8 +540,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(stream, with: urlRequest)
@@ -611,8 +600,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil,
-        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?)
-    {
+        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
 
@@ -654,8 +642,7 @@ open class SessionManager {
         multipartFormData: @escaping (MultipartFormData) -> Void,
         usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold,
         with urlRequest: URLRequestConvertible,
-        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?)
-    {
+        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) {
         DispatchQueue.global(qos: .utility).async {
             let formData = MultipartFormData()
             multipartFormData(formData)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift
index 8e19888fc8d248cebdb8a8b5e0762d2dd1a238fa..12fcbe92d331a893ba21ac2de6470733e6dd5374 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift
@@ -94,8 +94,7 @@ open class TaskDelegate: NSObject {
         task: URLSessionTask,
         willPerformHTTPRedirection response: HTTPURLResponse,
         newRequest request: URLRequest,
-        completionHandler: @escaping (URLRequest?) -> Void)
-    {
+        completionHandler: @escaping (URLRequest?) -> Void) {
         var redirectRequest: URLRequest? = request
 
         if let taskWillPerformHTTPRedirection = taskWillPerformHTTPRedirection {
@@ -110,8 +109,7 @@ open class TaskDelegate: NSObject {
         _ session: URLSession,
         task: URLSessionTask,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         var disposition: URLSession.AuthChallengeDisposition = .performDefaultHandling
         var credential: URLCredential?
 
@@ -150,8 +148,7 @@ open class TaskDelegate: NSObject {
     func urlSession(
         _ session: URLSession,
         task: URLSessionTask,
-        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void)
-    {
+        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) {
         var bodyStream: InputStream?
 
         if let taskNeedNewBodyStream = taskNeedNewBodyStream {
@@ -237,8 +234,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         didReceive response: URLResponse,
-        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void)
-    {
+        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
         var disposition: URLSession.ResponseDisposition = .allow
 
         expectedContentLength = response.expectedContentLength
@@ -253,8 +249,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
     func urlSession(
         _ session: URLSession,
         dataTask: URLSessionDataTask,
-        didBecome downloadTask: URLSessionDownloadTask)
-    {
+        didBecome downloadTask: URLSessionDownloadTask) {
         dataTaskDidBecomeDownloadTask?(session, dataTask, downloadTask)
     }
 
@@ -287,8 +282,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         willCacheResponse proposedResponse: CachedURLResponse,
-        completionHandler: @escaping (CachedURLResponse?) -> Void)
-    {
+        completionHandler: @escaping (CachedURLResponse?) -> Void) {
         var cachedResponse: CachedURLResponse? = proposedResponse
 
         if let dataTaskWillCacheResponse = dataTaskWillCacheResponse {
@@ -343,8 +337,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
     func urlSession(
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
-        didFinishDownloadingTo location: URL)
-    {
+        didFinishDownloadingTo location: URL) {
         temporaryURL = location
 
         guard
@@ -379,8 +372,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
         downloadTask: URLSessionDownloadTask,
         didWriteData bytesWritten: Int64,
         totalBytesWritten: Int64,
-        totalBytesExpectedToWrite: Int64)
-    {
+        totalBytesExpectedToWrite: Int64) {
         if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() }
 
         if let downloadTaskDidWriteData = downloadTaskDidWriteData {
@@ -405,8 +397,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
         didResumeAtOffset fileOffset: Int64,
-        expectedTotalBytes: Int64)
-    {
+        expectedTotalBytes: Int64) {
         if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset {
             downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes)
         } else {
@@ -448,8 +439,7 @@ class UploadTaskDelegate: DataTaskDelegate {
         task: URLSessionTask,
         didSendBodyData bytesSent: Int64,
         totalBytesSent: Int64,
-        totalBytesExpectedToSend: Int64)
-    {
+        totalBytesExpectedToSend: Int64) {
         if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() }
 
         if let taskDidSendBodyData = taskDidSendBodyData {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift
index 181c9883cb2b8a6b4fd3bd198dc22f500b92da56..b318b1ff484a370f184ef92a9e68bedd850c20a9 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift
@@ -64,8 +64,7 @@ public struct Timeline {
         requestStartTime: CFAbsoluteTime = 0.0,
         initialResponseTime: CFAbsoluteTime = 0.0,
         requestCompletedTime: CFAbsoluteTime = 0.0,
-        serializationCompletedTime: CFAbsoluteTime = 0.0)
-    {
+        serializationCompletedTime: CFAbsoluteTime = 0.0) {
         self.requestStartTime = requestStartTime
         self.initialResponseTime = initialResponseTime
         self.requestCompletedTime = requestCompletedTime
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift
index ec2c5c35a066e58e4e2b8793ea197daa6a735611..deaee34ad870b304d94e6213a04530db629499f7 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift
@@ -94,8 +94,7 @@ extension Request {
         statusCode acceptableStatusCodes: S,
         response: HTTPURLResponse)
         -> ValidationResult
-        where S.Iterator.Element == Int
-    {
+        where S.Iterator.Element == Int {
         if acceptableStatusCodes.contains(response.statusCode) {
             return .success
         } else {
@@ -111,8 +110,7 @@ extension Request {
         response: HTTPURLResponse,
         data: Data?)
         -> ValidationResult
-        where S.Iterator.Element == String
-    {
+        where S.Iterator.Element == String {
         guard let data = data, data.count > 0 else { return .success }
 
         guard
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIHelper.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
index 3c7b53f81496ad34ff0acca141c0a3ab4b707a1d..447a87c0942256306e59ebb6a8dfa33bdd83a360 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
@@ -7,7 +7,7 @@
 import Foundation
 
 public struct APIHelper {
-    public static func rejectNil(_ source: [String:Any?]) -> [String:Any]? {
+    public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? {
         let destination = source.reduce(into: [String: Any]()) { (result, item) in
             if let value = item.value {
                 result[item.key] = value
@@ -20,17 +20,17 @@ public struct APIHelper {
         return destination
     }
 
-    public static func rejectNilHeaders(_ source: [String:Any?]) -> [String:String] {
+    public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] {
         return source.reduce(into: [String: String]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
-                result[item.key] = collection.filter({ $0 != nil }).map{ "\($0!)" }.joined(separator: ",")
+                result[item.key] = collection.filter({ $0 != nil }).map { "\($0!)" }.joined(separator: ",")
             } else if let value: Any = item.value {
                 result[item.key] = "\(value)"
             }
         }
     }
 
-    public static func convertBoolToString(_ source: [String: Any]?) -> [String:Any]? {
+    public static func convertBoolToString(_ source: [String: Any]?) -> [String: Any]? {
         guard let source = source else {
             return nil
         }
@@ -45,8 +45,7 @@ public struct APIHelper {
         })
     }
 
-
-    public static func mapValuesToQueryItems(_ source: [String:Any?]) -> [URLQueryItem]? {
+    public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? {
         let destination = source.filter({ $0.value != nil}).reduce(into: [URLQueryItem]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
                 let value = collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",")
@@ -62,4 +61,3 @@ public struct APIHelper {
         return destination
     }
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs.swift
index 8cae3aacfe5ac00ed27641eb7318bad9bf35930e..bb2f200ba3afc14c8df09f5578ffef3cfc2effd8 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs.swift
@@ -9,22 +9,22 @@ import Foundation
 open class PetstoreClientAPI {
     open static var basePath = "http://petstore.swagger.io:80/v2"
     open static var credential: URLCredential?
-    open static var customHeaders: [String:String] = [:]
+    open static var customHeaders: [String: String] = [:]
     open static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory()
 }
 
 open class RequestBuilder<T> {
     var credential: URLCredential?
-    var headers: [String:String]
-    public let parameters: [String:Any]?
+    var headers: [String: String]
+    public let parameters: [String: Any]?
     public let isBody: Bool
     public let method: String
     public let URLString: String
 
     /// Optional block to obtain a reference to the request's progress instance when available.
-    public var onProgressReady: ((Progress) -> ())?
+    public var onProgressReady: ((Progress) -> Void)?
 
-    required public init(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         self.method = method
         self.URLString = URLString
         self.parameters = parameters
@@ -34,7 +34,7 @@ open class RequestBuilder<T> {
         addHeaders(PetstoreClientAPI.customHeaders)
     }
 
-    open func addHeaders(_ aHeaders:[String:String]) {
+    open func addHeaders(_ aHeaders: [String: String]) {
         for (header, value) in aHeaders {
             headers[header] = value
         }
@@ -57,5 +57,5 @@ open class RequestBuilder<T> {
 
 public protocol RequestBuilderFactory {
     func getNonDecodableBuilder<T>() -> RequestBuilder<T>.Type
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
index 637fa6df55ea065dc475666b13f05a2884e0e3bc..2fadeb51ceb119ddad16a6af4abd98d204341e6d 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class AnotherFakeAPI {
     /**
      To test special tags
@@ -18,7 +16,7 @@ open class AnotherFakeAPI {
      - parameter client: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testSpecialTags(client: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func testSpecialTags(client: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         testSpecialTagsWithRequestBuilder(client: client).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
index 31285485c0de3159702a779a093e720c20338825..404824a2c73ab7e1d292e6f18d2d57aca90264fc 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
@@ -9,15 +9,13 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class FakeAPI {
     /**
 
      - parameter body: (body) Input boolean as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterBooleanSerialize(body: Bool? = nil, completion: @escaping ((_ data: Bool?,_ error: Error?) -> Void)) {
+    open class func fakeOuterBooleanSerialize(body: Bool? = nil, completion: @escaping ((_ data: Bool?, _ error: Error?) -> Void)) {
         fakeOuterBooleanSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -47,7 +45,7 @@ open class FakeAPI {
      - Test serialization of outer boolean types
      - examples: [{contentType=*/*, example=null}]
      - parameter body: (body) Input boolean as post body (optional)
-     - returns: RequestBuilder<Bool> 
+     - returns: RequestBuilder<Bool>
      */
     open class func fakeOuterBooleanSerializeWithRequestBuilder(body: Bool? = nil) -> RequestBuilder<Bool> {
         let path = "/fake/outer/boolean"
@@ -66,7 +64,7 @@ open class FakeAPI {
      - parameter outerComposite: (body) Input composite as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterCompositeSerialize(outerComposite: OuterComposite? = nil, completion: @escaping ((_ data: OuterComposite?,_ error: Error?) -> Void)) {
+    open class func fakeOuterCompositeSerialize(outerComposite: OuterComposite? = nil, completion: @escaping ((_ data: OuterComposite?, _ error: Error?) -> Void)) {
         fakeOuterCompositeSerializeWithRequestBuilder(outerComposite: outerComposite).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -94,9 +92,9 @@ open class FakeAPI {
     /**
      - POST /fake/outer/composite
      - Test serialization of object with outer number type
-     - examples: [{contentType=*/*, example={ }}]
+     - examples: [{contentType=*/*, example= { }}]
      - parameter outerComposite: (body) Input composite as post body (optional)
-     - returns: RequestBuilder<OuterComposite> 
+     - returns: RequestBuilder<OuterComposite>
      */
     open class func fakeOuterCompositeSerializeWithRequestBuilder(outerComposite: OuterComposite? = nil) -> RequestBuilder<OuterComposite> {
         let path = "/fake/outer/composite"
@@ -115,7 +113,7 @@ open class FakeAPI {
      - parameter body: (body) Input number as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterNumberSerialize(body: Double? = nil, completion: @escaping ((_ data: Double?,_ error: Error?) -> Void)) {
+    open class func fakeOuterNumberSerialize(body: Double? = nil, completion: @escaping ((_ data: Double?, _ error: Error?) -> Void)) {
         fakeOuterNumberSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -145,7 +143,7 @@ open class FakeAPI {
      - Test serialization of outer number types
      - examples: [{contentType=*/*, example=null}]
      - parameter body: (body) Input number as post body (optional)
-     - returns: RequestBuilder<Double> 
+     - returns: RequestBuilder<Double>
      */
     open class func fakeOuterNumberSerializeWithRequestBuilder(body: Double? = nil) -> RequestBuilder<Double> {
         let path = "/fake/outer/number"
@@ -164,7 +162,7 @@ open class FakeAPI {
      - parameter body: (body) Input string as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterStringSerialize(body: String? = nil, completion: @escaping ((_ data: String?,_ error: Error?) -> Void)) {
+    open class func fakeOuterStringSerialize(body: String? = nil, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
         fakeOuterStringSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -194,7 +192,7 @@ open class FakeAPI {
      - Test serialization of outer string types
      - examples: [{contentType=*/*, example=null}]
      - parameter body: (body) Input string as post body (optional)
-     - returns: RequestBuilder<String> 
+     - returns: RequestBuilder<String>
      */
     open class func fakeOuterStringSerializeWithRequestBuilder(body: String? = nil) -> RequestBuilder<String> {
         let path = "/fake/outer/string"
@@ -214,8 +212,8 @@ open class FakeAPI {
      - parameter user: (body)  
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testBodyWithQueryParams(query: String, user: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        testBodyWithQueryParamsWithRequestBuilder(query: query, user: user).execute { (response, error) -> Void in
+    open class func testBodyWithQueryParams(query: String, user: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        testBodyWithQueryParamsWithRequestBuilder(query: query, user: user).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -271,7 +269,7 @@ open class FakeAPI {
      - parameter client: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testClientModel(client: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func testClientModel(client: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         testClientModelWithRequestBuilder(client: client).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -338,8 +336,8 @@ open class FakeAPI {
      - parameter callback: (form) None (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute { (response, error) -> Void in
+    open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -407,7 +405,7 @@ open class FakeAPI {
     open class func testEndpointParametersWithRequestBuilder(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "integer": integer?.encodeToJSON(),
             "int32": int32?.encodeToJSON(),
             "int64": int64?.encodeToJSON(),
@@ -426,7 +424,7 @@ open class FakeAPI {
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -514,8 +512,8 @@ open class FakeAPI {
      - parameter enumFormString: (form) Form parameter enum test (string) (optional, default to "-efg")
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (response, error) -> Void in
+    open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -568,19 +566,19 @@ open class FakeAPI {
     open class func testEnumParametersWithRequestBuilder(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "enum_form_string_array": enumFormStringArray,
             "enum_form_string": enumFormString?.rawValue
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "enum_query_string_array": enumQueryStringArray, 
-            "enum_query_string": enumQueryString?.rawValue, 
-            "enum_query_integer": enumQueryInteger?.rawValue, 
+            "enum_query_string_array": enumQueryStringArray,
+            "enum_query_string": enumQueryString?.rawValue,
+            "enum_query_integer": enumQueryInteger?.rawValue,
             "enum_query_double": enumQueryDouble?.rawValue
         ])
         let nillableHeaders: [String: Any?] = [
@@ -600,8 +598,8 @@ open class FakeAPI {
      - parameter requestBody: (body) request body 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testInlineAdditionalProperties(requestBody: [String:String], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        testInlineAdditionalPropertiesWithRequestBuilder(requestBody: requestBody).execute { (response, error) -> Void in
+    open class func testInlineAdditionalProperties(requestBody: [String: String], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        testInlineAdditionalPropertiesWithRequestBuilder(requestBody: requestBody).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -616,7 +614,7 @@ open class FakeAPI {
      - parameter requestBody: (body) request body 
      - returns: Observable<Void>
      */
-    open class func testInlineAdditionalProperties(requestBody: [String:String]) -> Observable<Void> {
+    open class func testInlineAdditionalProperties(requestBody: [String: String]) -> Observable<Void> {
         return Observable.create { observer -> Disposable in
             testInlineAdditionalProperties(requestBody: requestBody) { data, error in
                 if let error = error {
@@ -636,7 +634,7 @@ open class FakeAPI {
      - parameter requestBody: (body) request body 
      - returns: RequestBuilder<Void> 
      */
-    open class func testInlineAdditionalPropertiesWithRequestBuilder(requestBody: [String:String]) -> RequestBuilder<Void> {
+    open class func testInlineAdditionalPropertiesWithRequestBuilder(requestBody: [String: String]) -> RequestBuilder<Void> {
         let path = "/fake/inline-additionalProperties"
         let URLString = PetstoreClientAPI.basePath + path
         let parameters = JSONEncodingHelper.encodingParameters(forEncodableObject: requestBody)
@@ -655,8 +653,8 @@ open class FakeAPI {
      - parameter param2: (form) field2 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in
+    open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -696,14 +694,14 @@ open class FakeAPI {
     open class func testJsonFormDataWithRequestBuilder(param: String, param2: String) -> RequestBuilder<Void> {
         let path = "/fake/jsonFormData"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "param": param,
             "param2": param2
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
index b4003e2c2523810c4e29ee6c93374e7509e3e737..b14e41a990cc6d9f40428e0271686797202056a8 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class FakeClassnameTags123API {
     /**
      To test class name in snake case
@@ -18,7 +16,7 @@ open class FakeClassnameTags123API {
      - parameter client: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testClassname(client: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func testClassname(client: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         testClassnameWithRequestBuilder(client: client).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
index 59dab5ba4372a9b5a2a37e8e87231de5af94f844..5bfe5c64b2eb921ef1904b7fadf8ed761eafd3df 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class PetAPI {
     /**
      Add a new pet to the store
@@ -18,8 +16,8 @@ open class PetAPI {
      - parameter pet: (body) Pet object that needs to be added to the store 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func addPet(pet: Pet, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        addPetWithRequestBuilder(pet: pet).execute { (response, error) -> Void in
+    open class func addPet(pet: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        addPetWithRequestBuilder(pet: pet).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -76,8 +74,8 @@ open class PetAPI {
      - parameter apiKey: (header)  (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deletePet(petId: Int64, apiKey: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in
+    open class func deletePet(petId: Int64, apiKey: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -123,8 +121,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
         let nillableHeaders: [String: Any?] = [
             "api_key": apiKey
@@ -151,7 +149,7 @@ open class PetAPI {
      - parameter status: (query) Status values that need to be considered for filter 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func findPetsByStatus(status: [String], completion: @escaping ((_ data: [Pet]?,_ error: Error?) -> Void)) {
+    open class func findPetsByStatus(status: [String], completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
         findPetsByStatusWithRequestBuilder(status: status).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -216,8 +214,8 @@ open class PetAPI {
     open class func findPetsByStatusWithRequestBuilder(status: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByStatus"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "status": status
@@ -234,7 +232,7 @@ open class PetAPI {
      - parameter tags: (query) Tags to filter by 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func findPetsByTags(tags: [String], completion: @escaping ((_ data: [Pet]?,_ error: Error?) -> Void)) {
+    open class func findPetsByTags(tags: [String], completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
         findPetsByTagsWithRequestBuilder(tags: tags).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -299,8 +297,8 @@ open class PetAPI {
     open class func findPetsByTagsWithRequestBuilder(tags: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByTags"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "tags": tags
@@ -317,7 +315,7 @@ open class PetAPI {
      - parameter petId: (path) ID of pet to return 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getPetById(petId: Int64, completion: @escaping ((_ data: Pet?,_ error: Error?) -> Void)) {
+    open class func getPetById(petId: Int64, completion: @escaping ((_ data: Pet?, _ error: Error?) -> Void)) {
         getPetByIdWithRequestBuilder(petId: petId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -385,8 +383,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Pet>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -400,8 +398,8 @@ open class PetAPI {
      - parameter pet: (body) Pet object that needs to be added to the store 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updatePet(pet: Pet, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        updatePetWithRequestBuilder(pet: pet).execute { (response, error) -> Void in
+    open class func updatePet(pet: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        updatePetWithRequestBuilder(pet: pet).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -459,8 +457,8 @@ open class PetAPI {
      - parameter status: (form) Updated status of the pet (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in
+    open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -508,14 +506,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "name": name,
             "status": status
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -531,7 +529,7 @@ open class PetAPI {
      - parameter file: (form) file to upload (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, completion: @escaping ((_ data: ApiResponse?,_ error: Error?) -> Void)) {
+    open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, completion: @escaping ((_ data: ApiResponse?, _ error: Error?) -> Void)) {
         uploadFileWithRequestBuilder(petId: petId, additionalMetadata: additionalMetadata, file: file).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -581,14 +579,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "file": file
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
index b4e23ae435c6fcae47223d92f0486d1e49af2377..4fb14bc42d0f49c8d8f5e3d87f4a5a9a6ef11010 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class StoreAPI {
     /**
      Delete purchase order by ID
@@ -18,8 +16,8 @@ open class StoreAPI {
      - parameter orderId: (path) ID of the order that needs to be deleted 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        deleteOrderWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in
+    open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        deleteOrderWithRequestBuilder(orderId: orderId).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -61,8 +59,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -75,7 +73,7 @@ open class StoreAPI {
      
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getInventory(completion: @escaping ((_ data: [String:Int]?,_ error: Error?) -> Void)) {
+    open class func getInventory(completion: @escaping ((_ data: [String: Int]?, _ error: Error?) -> Void)) {
         getInventoryWithRequestBuilder().execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -86,9 +84,9 @@ open class StoreAPI {
      
      - returns: Observable<[String:Int]>
      */
-    open class func getInventory() -> Observable<[String:Int]> {
+    open class func getInventory() -> Observable<[String: Int]> {
         return Observable.create { observer -> Disposable in
-            getInventory() { data, error in
+            getInventory { data, error in
                 if let error = error {
                     observer.on(.error(error))
                 } else {
@@ -109,14 +107,14 @@ open class StoreAPI {
        - name: api_key
      - returns: RequestBuilder<[String:Int]> 
      */
-    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String:Int]> {
+    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String: Int]> {
         let path = "/store/inventory"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
-        let requestBuilder: RequestBuilder<[String:Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+        let requestBuilder: RequestBuilder<[String: Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
 
         return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false)
     }
@@ -127,7 +125,7 @@ open class StoreAPI {
      - parameter orderId: (path) ID of pet that needs to be fetched 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getOrderById(orderId: Int64, completion: @escaping ((_ data: Order?,_ error: Error?) -> Void)) {
+    open class func getOrderById(orderId: Int64, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
         getOrderByIdWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -181,8 +179,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Order>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -196,7 +194,7 @@ open class StoreAPI {
      - parameter order: (body) order placed for purchasing the pet 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func placeOrder(order: Order, completion: @escaping ((_ data: Order?,_ error: Error?) -> Void)) {
+    open class func placeOrder(order: Order, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
         placeOrderWithRequestBuilder(order: order).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
index 7a2e5332ad37cc30894fc7c7199c5f7b423e33a3..9f5e670bfc2b9531b095c4aa864d47a2ce1a7cb5 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
@@ -9,8 +9,6 @@ import Foundation
 import Alamofire
 import RxSwift
 
-
-
 open class UserAPI {
     /**
      Create user
@@ -18,8 +16,8 @@ open class UserAPI {
      - parameter user: (body) Created user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUser(user: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        createUserWithRequestBuilder(user: user).execute { (response, error) -> Void in
+    open class func createUser(user: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        createUserWithRequestBuilder(user: user).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -73,8 +71,8 @@ open class UserAPI {
      - parameter user: (body) List of user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUsersWithArrayInput(user: [User], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        createUsersWithArrayInputWithRequestBuilder(user: user).execute { (response, error) -> Void in
+    open class func createUsersWithArrayInput(user: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        createUsersWithArrayInputWithRequestBuilder(user: user).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -127,8 +125,8 @@ open class UserAPI {
      - parameter user: (body) List of user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUsersWithListInput(user: [User], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        createUsersWithListInputWithRequestBuilder(user: user).execute { (response, error) -> Void in
+    open class func createUsersWithListInput(user: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        createUsersWithListInputWithRequestBuilder(user: user).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -181,8 +179,8 @@ open class UserAPI {
      - parameter username: (path) The name that needs to be deleted 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deleteUser(username: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        deleteUserWithRequestBuilder(username: username).execute { (response, error) -> Void in
+    open class func deleteUser(username: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        deleteUserWithRequestBuilder(username: username).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -224,8 +222,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -239,7 +237,7 @@ open class UserAPI {
      - parameter username: (path) The name that needs to be fetched. Use user1 for testing. 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getUserByName(username: String, completion: @escaping ((_ data: User?,_ error: Error?) -> Void)) {
+    open class func getUserByName(username: String, completion: @escaping ((_ data: User?, _ error: Error?) -> Void)) {
         getUserByNameWithRequestBuilder(username: username).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -296,8 +294,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<User>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -312,7 +310,7 @@ open class UserAPI {
      - parameter password: (query) The password for login in clear text 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func loginUser(username: String, password: String, completion: @escaping ((_ data: String?,_ error: Error?) -> Void)) {
+    open class func loginUser(username: String, password: String, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
         loginUserWithRequestBuilder(username: username, password: password).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -350,11 +348,11 @@ open class UserAPI {
     open class func loginUserWithRequestBuilder(username: String, password: String) -> RequestBuilder<String> {
         let path = "/user/login"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "username": username, 
+            "username": username,
             "password": password
         ])
 
@@ -368,8 +366,8 @@ open class UserAPI {
      
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func logoutUser(completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        logoutUserWithRequestBuilder().execute { (response, error) -> Void in
+    open class func logoutUser(completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        logoutUserWithRequestBuilder().execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
@@ -385,7 +383,7 @@ open class UserAPI {
      */
     open class func logoutUser() -> Observable<Void> {
         return Observable.create { observer -> Disposable in
-            logoutUser() { data, error in
+            logoutUser { data, error in
                 if let error = error {
                     observer.on(.error(error))
                 } else {
@@ -405,8 +403,8 @@ open class UserAPI {
     open class func logoutUserWithRequestBuilder() -> RequestBuilder<Void> {
         let path = "/user/logout"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -421,8 +419,8 @@ open class UserAPI {
      - parameter user: (body) Updated user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updateUser(username: String, user: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
-        updateUserWithRequestBuilder(username: username, user: user).execute { (response, error) -> Void in
+    open class func updateUser(username: String, user: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
+        updateUserWithRequestBuilder(username: username, user: user).execute { (_, error) -> Void in
             if error == nil {
                 completion((), error)
             } else {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
index 280b4e53389d3e068dee7b9b5a390002827d5762..8fc48ccbedbd1c046b2df5affe5696f14d5bdbda 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
@@ -12,7 +12,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
         return AlamofireRequestBuilder<T>.self
     }
 
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type {
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type {
         return AlamofireDecodableRequestBuilder<T>.self
     }
 }
@@ -21,7 +21,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
 private var managerStore: [String: Alamofire.SessionManager] = [:]
 
 open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
-    required public init(method: String, URLString: String, parameters: [String : Any]?, isBody: Bool, headers: [String : String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         super.init(method: method, URLString: URLString, parameters: parameters, isBody: isBody, headers: headers)
     }
 
@@ -50,17 +50,17 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
      May be overridden by a subclass if you want to control the request
      configuration (e.g. to override the cache policy).
      */
-    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String:String]) -> DataRequest {
+    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) -> DataRequest {
         return manager.request(URLString, method: method, parameters: parameters, encoding: encoding, headers: headers)
     }
 
     override open func execute(_ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
-        let managerId:String = UUID().uuidString
+        let managerId: String = UUID().uuidString
         // Create a new manager for each request to customize its request header
         let manager = createSessionManager()
         managerStore[managerId] = manager
 
-        let encoding:ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
+        let encoding: ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
 
         let xMethod = Alamofire.HTTPMethod(rawValue: method)
         let fileKeys = parameters == nil ? [] : parameters!.filter { $1 is NSURL }
@@ -73,8 +73,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
                     case let fileURL as URL:
                         if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
                             mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
-                        }
-                        else {
+                        } else {
                             mpForm.append(fileURL, withName: k)
                         }
                     case let string as String:
@@ -238,7 +237,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
         return httpHeaders
     }
 
-    fileprivate func getFileName(fromContentDisposition contentDisposition : String?) -> String? {
+    fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? {
 
         guard let contentDisposition = contentDisposition else {
             return nil
@@ -246,7 +245,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
         let items = contentDisposition.components(separatedBy: ";")
 
-        var filename : String? = nil
+        var filename: String?
 
         for contentItem in items {
 
@@ -257,7 +256,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
             filename = contentItem
             return filename?
-                .replacingCharacters(in: range, with:"")
+                .replacingCharacters(in: range, with: "")
                 .replacingOccurrences(of: "\"", with: "")
                 .trimmingCharacters(in: .whitespacesAndNewlines)
         }
@@ -266,7 +265,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getPath(from url : URL) throws -> String {
+    fileprivate func getPath(from url: URL) throws -> String {
 
         guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else {
             throw DownloadException.requestMissingPath
@@ -280,7 +279,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getURL(from urlRequest : URLRequest) throws -> URL {
+    fileprivate func getURL(from urlRequest: URLRequest) throws -> URL {
 
         guard let url = urlRequest.url else {
             throw DownloadException.requestMissingURL
@@ -291,7 +290,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
 }
 
-fileprivate enum DownloadException : Error {
+private enum DownloadException: Error {
     case responseDataMissing
     case responseFailed
     case requestMissing
@@ -306,7 +305,7 @@ public enum AlamofireDecodableRequestBuilderError: Error {
     case generalError(Error)
 }
 
-open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilder<T> {
+open class AlamofireDecodableRequestBuilder<T: Decodable>: AlamofireRequestBuilder<T> {
 
     override fileprivate func processRequest(request: DataRequest, _ managerId: String, _ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
         if let credential = self.credential {
@@ -398,7 +397,7 @@ open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilde
                     return
                 }
 
-                var responseObj: Response<T>? = nil
+                var responseObj: Response<T>?
 
                 let decodeResult: (decodableObj: T?, error: Error?) = CodableHelper.decode(T.self, from: data)
                 if decodeResult.error == nil {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
index 2d50e463ae114b433914249f7a61bd0f7851565a..27e6a2876193bc8786c2ceab20217b4ea03cfa97 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
@@ -13,9 +13,9 @@ open class CodableHelper {
 
     open static var dateformatter: DateFormatter?
 
-    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T : Decodable {
-        var returnedDecodable: T? = nil
-        var returnedError: Error? = nil
+    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable {
+        var returnedDecodable: T?
+        var returnedError: Error?
 
         let decoder = JSONDecoder()
         if let df = self.dateformatter {
@@ -39,9 +39,9 @@ open class CodableHelper {
         return (returnedDecodable, returnedError)
     }
 
-    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T : Encodable {
+    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable {
         var returnedData: Data?
-        var returnedError: Error? = nil
+        var returnedError: Error?
 
         let encoder = JSONEncoder()
         if prettyPrint {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Configuration.swift
index f8180752b67bab65e4f0a09c02f41b84743536b9..eb61a73c0b7c22acae21d861cd7a70e820ece3d3 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Configuration.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Configuration.swift
@@ -7,9 +7,9 @@
 import Foundation
 
 open class Configuration {
-	
+
 	// This value is used to configure the date formatter that is used to serialize dates into JSON format. 
 	// You must set it prior to encoding any dates, and it will only be read once. 
     open static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
-    
-}
\ No newline at end of file
+
+}
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Extensions.swift
index abe218b4e7ac6ad8c440cd67d9d454b788b70033..47967f92487a0fb03ed3117398a4062cc7793cb5 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Extensions.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Extensions.swift
@@ -106,24 +106,24 @@ extension String: CodingKey {
 
 extension KeyedEncodingContainerProtocol {
 
-    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T: Encodable {
         var arrayContainer = nestedUnkeyedContainer(forKey: key)
         try arrayContainer.encode(contentsOf: values)
     }
 
-    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable {
         if let values = values {
             try encodeArray(values, forKey: key)
         }
     }
 
-    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T : Encodable {
+    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T: Encodable {
         for (key, value) in pairs {
             try encode(value, forKey: key)
         }
     }
 
-    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T : Encodable {
+    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T: Encodable {
         if let pairs = pairs {
             try encodeMap(pairs)
         }
@@ -133,7 +133,7 @@ extension KeyedEncodingContainerProtocol {
 
 extension KeyedDecodingContainerProtocol {
 
-    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T : Decodable {
+    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable {
         var tmpArray = [T]()
 
         var nestedContainer = try nestedUnkeyedContainer(forKey: key)
@@ -145,8 +145,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T : Decodable {
-        var tmpArray: [T]? = nil
+    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable {
+        var tmpArray: [T]?
 
         if contains(key) {
             tmpArray = try decodeArray(T.self, forKey: key)
@@ -155,8 +155,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T : Decodable {
-        var map: [Self.Key : T] = [:]
+    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T: Decodable {
+        var map: [Self.Key: T] = [:]
 
         for key in allKeys {
             if !excludedKeys.contains(key) {
@@ -169,5 +169,3 @@ extension KeyedDecodingContainerProtocol {
     }
 
 }
-
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift
index ca05906d4206556e58f13d08ccb7b341173878e7..fb76bbed26f7be668cd3094c44fb6887b30b9828 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift
@@ -42,7 +42,7 @@ public struct JSONDataEncoding: ParameterEncoding {
     }
 
     public static func encodingParameters(jsonData: Data?) -> Parameters? {
-        var returnedParams: Parameters? = nil
+        var returnedParams: Parameters?
         if let jsonData = jsonData, !jsonData.isEmpty {
             var params = Parameters()
             params[jsonDataKey] = jsonData
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
index 70449515842de48fed6aec10ef246b1ad0f89e8b..7bd1267e95f3a182e28babbd80281feaf0ae6bce 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
@@ -10,8 +10,8 @@ import Alamofire
 
 open class JSONEncodingHelper {
 
-    open class func encodingParameters<T:Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
-        var params: Parameters? = nil
+    open class func encodingParameters<T: Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
+        var params: Parameters?
 
         // Encode the Encodable object
         if let encodableObj = encodableObj {
@@ -25,7 +25,7 @@ open class JSONEncodingHelper {
     }
 
     open class func encodingParameters(forEncodableObject encodableObj: Any?) -> Parameters? {
-        var params: Parameters? = nil
+        var params: Parameters?
 
         if let encodableObj = encodableObj {
             do {
@@ -39,5 +39,5 @@ open class JSONEncodingHelper {
 
         return params
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models.swift
index 42f8186ae4afeb4db406efa3c353a9684901089b..9d4101c3cd402dc1ccb1a351ac6a0941da2e791c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models.swift
@@ -10,7 +10,7 @@ protocol JSONEncodable {
     func encodeToJSON() -> Any
 }
 
-public enum ErrorResponse : Error {
+public enum ErrorResponse: Error {
     case error(Int, Data?, Error)
 }
 
@@ -27,7 +27,7 @@ open class Response<T> {
 
     public convenience init(response: HTTPURLResponse, body: T?) {
         let rawHeader = response.allHeaderFields
-        var header = [String:String]()
+        var header = [String: String]()
         for case let (key, value) as (String, String) in rawHeader {
             header[key] = value
         }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
index 4e018486ad730bc390084966d555cc98319f3321..52c1d3bd2be17ed81172754b3521e6d53e57b444 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
@@ -7,23 +7,19 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesClass: Codable {
 
-    public var mapProperty: [String:String]?
-    public var mapOfMapProperty: [String:[String:String]]?
+    public var mapProperty: [String: String]?
+    public var mapOfMapProperty: [String: [String: String]]?
 
-    public init(mapProperty: [String:String]?, mapOfMapProperty: [String:[String:String]]?) {
+    public init(mapProperty: [String: String]?, mapOfMapProperty: [String: [String: String]]?) {
         self.mapProperty = mapProperty
         self.mapOfMapProperty = mapOfMapProperty
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapProperty = "map_property"
         case mapOfMapProperty = "map_of_map_property"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
index 7221a1be099dd896259e2c830046272e01191d98..5ed9f31e2a364d0bf7a25bdf70cecb48af6ab5c4 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Animal: Codable {
 
     public var className: String
@@ -19,6 +17,4 @@ public struct Animal: Codable {
         self.color = color
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
index e7bea63f8ed28132865ea4d3c23eab55666cf4f6..e09b0e9efdc8ca7798114f24aff21f57e8f9fabd 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
@@ -7,5 +7,4 @@
 
 import Foundation
 
-
 public typealias AnimalFarm = [Animal]
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
index a22e9aaebbb06bf18c9bf8a5893ab3e0ece6945d..ec270da8907438877ee5cc303b093ceba3993297 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ApiResponse: Codable {
 
     public var code: Int?
@@ -21,6 +19,4 @@ public struct ApiResponse: Codable {
         self.message = message
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
index 4e5a5ca1445d9faf133bded5a5c89297ea7c5822..3843287630b100a8210c60aff75d4286a44e46a7 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfArrayOfNumberOnly: Codable {
 
     public var arrayArrayNumber: [[Double]]?
@@ -17,10 +15,8 @@ public struct ArrayOfArrayOfNumberOnly: Codable {
         self.arrayArrayNumber = arrayArrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayArrayNumber = "ArrayArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
index 7d059d36833987dc60886960363e11e328dbcee2..f8b198e81f50d4cf237000ed8dae7d47779f8bf4 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfNumberOnly: Codable {
 
     public var arrayNumber: [Double]?
@@ -17,10 +15,8 @@ public struct ArrayOfNumberOnly: Codable {
         self.arrayNumber = arrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayNumber = "ArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
index 9c56fed50c2e79b759cdaceb078c82da316b463d..67f7f7e5151fd3bca131124815c75a0d9f8ade28 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayTest: Codable {
 
     public var arrayOfString: [String]?
@@ -21,12 +19,10 @@ public struct ArrayTest: Codable {
         self.arrayArrayOfModel = arrayArrayOfModel
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayOfString = "array_of_string"
         case arrayArrayOfInteger = "array_array_of_integer"
         case arrayArrayOfModel = "array_array_of_model"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
index 98cda23dac9e7415bc9a1a2cd1dd98fa389d885d..d576b50b1c9c1f2c4c7b719c7800e4da183e49ba 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Capitalization: Codable {
 
     public var smallCamel: String?
@@ -28,7 +26,7 @@ public struct Capitalization: Codable {
         self.ATT_NAME = ATT_NAME
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case smallCamel
         case capitalCamel = "CapitalCamel"
         case smallSnake = "small_Snake"
@@ -37,6 +35,4 @@ public struct Capitalization: Codable {
         case ATT_NAME
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
index a116d964ea84b543abc96dd5273ab37c1fb897ee..7ab887f3113f1dd39f42b1019d8f58d45325f288 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Cat: Codable {
 
     public var className: String
@@ -21,6 +19,4 @@ public struct Cat: Codable {
         self.declawed = declawed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
index 77fba95c1d7926c00ba83c962759548542281e8e..399a062cfa9f6f995c7ae2c6054f13478205d88c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Category: Codable {
 
     public var _id: Int64?
@@ -19,11 +17,9 @@ public struct Category: Codable {
         self.name = name
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
index f673ed127cd8a545ae575acfcdee044768f8ae12..28cb30ce7b4bee968edc3cef6724572481551b91 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model with \&quot;_class\&quot; property */
 
 public struct ClassModel: Codable {
@@ -18,6 +17,4 @@ public struct ClassModel: Codable {
         self._class = _class
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
index 51390b6c4eac28e4df699b05a826a5da163ad0e4..00245ca37280eea9c87184eb0f40fb8bf03b81f2 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Client: Codable {
 
     public var client: String?
@@ -17,6 +15,4 @@ public struct Client: Codable {
         self.client = client
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
index 239ce74dcc2166d80a516ed215f31c1ad52fa930..492c1228008eb782ea0f927f65259ce2c7999d24 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Dog: Codable {
 
     public var className: String
@@ -21,6 +19,4 @@ public struct Dog: Codable {
         self.breed = breed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
index 8713961520e11abb6206697029d5a1fd6be66f00..5034ff0b8c684d21a45c635f4a4b9de56fb3cda1 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumArrays: Codable {
 
     public enum JustSymbol: String, Codable {
@@ -27,11 +25,9 @@ public struct EnumArrays: Codable {
         self.arrayEnum = arrayEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justSymbol = "just_symbol"
         case arrayEnum = "array_enum"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
index 7280a621fec75a24fafa361025faea5190af9f45..3c1dfcac577d12c69319e42cac6ea851bf5dcf28 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum EnumClass: String, Codable {
     case abc = "_abc"
     case efg = "-efg"
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
index 0f546c76a2183956d59c7d5d7bbc345ce58e1d8b..6db9b34d183ba0f97c10db4a22d60e85b5b2a54c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumTest: Codable {
 
     public enum EnumString: String, Codable {
@@ -43,7 +41,7 @@ public struct EnumTest: Codable {
         self.outerEnum = outerEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case enumString = "enum_string"
         case enumStringRequired = "enum_string_required"
         case enumInteger = "enum_integer"
@@ -51,6 +49,4 @@ public struct EnumTest: Codable {
         case outerEnum
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
index faa091b0658c6bb4c9d7cd06d8942eac1c19d382..20bd6d103b3dc87ffa6d7f38b21d957318628930 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FormatTest: Codable {
 
     public var integer: Int?
@@ -41,6 +39,4 @@ public struct FormatTest: Codable {
         self.password = password
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
index 554aee1081aa470de93a2c36c484b6427a67698a..906ddb06fb170e5de30f07754fce3efc4f512ee1 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct HasOnlyReadOnly: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct HasOnlyReadOnly: Codable {
         self.foo = foo
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/List.swift
index 8997340ff4befe18cc8f2754c7ea92620406571c..08d59953873e4cf8f3c5c133c58cf78c4a70f41e 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/List.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/List.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct List: Codable {
 
     public var _123list: String?
@@ -17,10 +15,8 @@ public struct List: Codable {
         self._123list = _123list
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _123list = "123-list"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
index dfbbee8428eb45630c3577a7a493a16f8bc774fe..2860f9078511a29900a5238fe1f2c35a948c89a5 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
@@ -7,27 +7,23 @@
 
 import Foundation
 
-
-
 public struct MapTest: Codable {
 
     public enum MapOfEnumString: String, Codable {
         case upper = "UPPER"
         case lower = "lower"
     }
-    public var mapMapOfString: [String:[String:String]]?
-    public var mapOfEnumString: [String:String]?
+    public var mapMapOfString: [String: [String: String]]?
+    public var mapOfEnumString: [String: String]?
 
-    public init(mapMapOfString: [String:[String:String]]?, mapOfEnumString: [String:String]?) {
+    public init(mapMapOfString: [String: [String: String]]?, mapOfEnumString: [String: String]?) {
         self.mapMapOfString = mapMapOfString
         self.mapOfEnumString = mapOfEnumString
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapMapOfString = "map_map_of_string"
         case mapOfEnumString = "map_of_enum_string"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
index 7116108fd7a3879ef9a8337cdd7ff8d8295a825e..c3deb2f28932f5d0ab338f3da2ac398de24a8822 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
@@ -7,20 +7,16 @@
 
 import Foundation
 
-
-
 public struct MixedPropertiesAndAdditionalPropertiesClass: Codable {
 
     public var uuid: UUID?
     public var dateTime: Date?
-    public var map: [String:Animal]?
+    public var map: [String: Animal]?
 
-    public init(uuid: UUID?, dateTime: Date?, map: [String:Animal]?) {
+    public init(uuid: UUID?, dateTime: Date?, map: [String: Animal]?) {
         self.uuid = uuid
         self.dateTime = dateTime
         self.map = map
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
index fc1d0606b7ba1788451c5add909cf4afb64031c9..7ed6aad907be01122bb19752a3622dc002d026be 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name starting with number */
 
 public struct Model200Response: Codable {
@@ -20,11 +19,9 @@ public struct Model200Response: Codable {
         self._class = _class
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case _class = "class"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
index cc165d767d91a0ac79941c3a1af5208e192941c9..ce9ffe4fb38e525fea73a67c24199de77214cb64 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name same as property name */
 
 public struct Name: Codable {
@@ -24,13 +23,11 @@ public struct Name: Codable {
         self._123number = _123number
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case snakeCase = "snake_case"
         case property
         case _123number = "123Number"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
index e6fb206093aa29bfd8254cffb0026bf04436d925..abd2269e8e76cbfae26cdc3c7582d486a13cfb60 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct NumberOnly: Codable {
 
     public var justNumber: Double?
@@ -17,10 +15,8 @@ public struct NumberOnly: Codable {
         self.justNumber = justNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justNumber = "JustNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
index 5cad29458b75eb196315062b6bd54d805399e568..f2b7565e2d9108c1328115d48f2154fe80c06332 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Order: Codable {
 
     public enum Status: String, Codable {
@@ -33,7 +31,7 @@ public struct Order: Codable {
         self.complete = complete
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case petId
         case quantity
@@ -42,6 +40,4 @@ public struct Order: Codable {
         case complete
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
index edc4523d9f0090260720b507ff61ac29df79e4ad..49aec001c5dbaeadfc67a0cfa9d2ad79fa3c20fb 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct OuterComposite: Codable {
 
     public var myNumber: Double?
@@ -21,12 +19,10 @@ public struct OuterComposite: Codable {
         self.myBoolean = myBoolean
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case myNumber = "my_number"
         case myString = "my_string"
         case myBoolean = "my_boolean"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
index bd1643d279edd46285735e726922a03f14b4c3e7..9f80fc95ecf0b11f47c6ec2f1e0e5a9a3ef000b0 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum OuterEnum: String, Codable {
     case placed = "placed"
     case approved = "approved"
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
index 3773bf53317e45689ec2bc0412a49621a24f4ec3..971ce9d4db6ee962e17ed924f2253146494b9668 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Pet: Codable {
 
     public enum Status: String, Codable {
@@ -33,7 +31,7 @@ public struct Pet: Codable {
         self.status = status
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case category
         case name
@@ -42,6 +40,4 @@ public struct Pet: Codable {
         case status
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
index 48b655a5b0aa2698abf0467fa038429ed3644075..0acd21fd10000317ffc9f96840a49b3dd538d0c7 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ReadOnlyFirst: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct ReadOnlyFirst: Codable {
         self.baz = baz
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
index de4b218999b7fda43e046a32e838f7c5807cd2d8..076082af842f1a3f7c6c1e19bffe9e3aecda4a31 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing reserved words */
 
 public struct Return: Codable {
@@ -18,10 +17,8 @@ public struct Return: Codable {
         self._return = _return
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _return = "return"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
index 213d896ba9882c8f8751f37efa757035910dab55..e79fc45c0e914a027b53334468238a95af0c36dd 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct SpecialModelName: Codable {
 
     public var specialPropertyName: Int64?
@@ -17,10 +15,8 @@ public struct SpecialModelName: Codable {
         self.specialPropertyName = specialPropertyName
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case specialPropertyName = "$special[property.name]"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
index 20f50efd3ac075769a0198fc9c933c404eac6252..83efe72b8a4e437c40aae7cb931abb5f53aaa98b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Tag: Codable {
 
     public var _id: Int64?
@@ -19,11 +17,9 @@ public struct Tag: Codable {
         self.name = name
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/User.swift
index d9c564d2a1fe8d4b16374d2a872ec14b9bc9741b..7d6b24b9e1005e5e78d801d1e35a8864bb1e1c0e 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/User.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/PetstoreClient/Classes/OpenAPIs/Models/User.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct User: Codable {
 
     public var _id: Int64?
@@ -32,7 +30,7 @@ public struct User: Codable {
         self.userStatus = userStatus
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _id = "id"
         case username
         case firstName
@@ -43,6 +41,4 @@ public struct User: Codable {
         case userStatus
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/AtomicInt.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/AtomicInt.swift
index 28ed4ad65a014878c375e451f0c7a278c5bea632..2f405c8a0e9166c7d1d12028444b5959e3ed2328 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/AtomicInt.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/AtomicInt.swift
@@ -30,4 +30,3 @@ extension AtomicInt {
         return (self.load() & mask) != 0
     }
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Bag.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Bag.swift
index 22d82d51fb658c9e61b2e88334eac46337c31a21..6b92b4011d6471016d20f5d77e0f1aed24e59341 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Bag.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Bag.swift
@@ -32,29 +32,29 @@ It is suitable for storing small number of elements.
 struct Bag<T> : CustomDebugStringConvertible {
     /// Type of identifier for inserted elements.
     typealias KeyType = BagKey
-    
+
     typealias Entry = (key: BagKey, value: T)
- 
+
     fileprivate var _nextKey: BagKey = BagKey(rawValue: 0)
 
     // data
 
     // first fill inline variables
-    var _key0: BagKey? = nil
-    var _value0: T? = nil
+    var _key0: BagKey?
+    var _value0: T?
 
     // then fill "array dictionary"
     var _pairs = ContiguousArray<Entry>()
 
     // last is sparse dictionary
-    var _dictionary: [BagKey : T]? = nil
+    var _dictionary: [BagKey: T]?
 
     var _onlyFastPath = true
 
     /// Creates new empty `Bag`.
     init() {
     }
-    
+
     /**
     Inserts `value` into bag.
     
@@ -83,18 +83,18 @@ struct Bag<T> : CustomDebugStringConvertible {
             _pairs.append((key: key, value: element))
             return key
         }
-        
+
         _dictionary = [key: element]
-        
+
         return key
     }
-    
+
     /// - returns: Number of elements in bag.
     var count: Int {
         let dictionaryCount: Int = _dictionary?.count ?? 0
         return (_value0 != nil ? 1 : 0) + _pairs.count + dictionaryCount
     }
-    
+
     /// Removes all elements from bag and clears capacity.
     mutating func removeAll() {
         _key0 = nil
@@ -103,7 +103,7 @@ struct Bag<T> : CustomDebugStringConvertible {
         _pairs.removeAll(keepingCapacity: false)
         _dictionary?.removeAll(keepingCapacity: false)
     }
-    
+
     /**
     Removes element with a specific `key` from bag.
     
@@ -136,7 +136,7 @@ struct Bag<T> : CustomDebugStringConvertible {
 
 extension Bag {
     /// A textual representation of `self`, suitable for debugging.
-    var debugDescription : String {
+    var debugDescription: String {
         return "\(self.count) elements in Bag"
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/InfiniteSequence.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/InfiniteSequence.swift
index 5a573a0de16805d1e3aac190833598d5c8ce920e..a46e74827c2bc0e26496667e9db5be57d2358c3b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/InfiniteSequence.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/InfiniteSequence.swift
@@ -10,13 +10,13 @@
 struct InfiniteSequence<E> : Sequence {
     typealias Element = E
     typealias Iterator = AnyIterator<E>
-    
+
     private let _repeatedValue: E
-    
+
     init(repeatedValue: E) {
         _repeatedValue = repeatedValue
     }
-    
+
     func makeIterator() -> Iterator {
         let repeatedValue = _repeatedValue
         return AnyIterator {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/PriorityQueue.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/PriorityQueue.swift
index 9b2c370ec48d0fcb04496a9e689312c0ac03b685..7d174fd7be5da91a4f6377fe86bd7f2b6f601143 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/PriorityQueue.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/PriorityQueue.swift
@@ -116,7 +116,7 @@ struct PriorityQueue<Element> {
     }
 }
 
-extension PriorityQueue : CustomDebugStringConvertible {
+extension PriorityQueue: CustomDebugStringConvertible {
     var debugDescription: String {
         return _elements.debugDescription
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Queue.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Queue.swift
index d05726c7b99af8d18ab5f96dbe7a5cd5b4029a4f..b9b3ae2e8b89f7bae82e600bee83a360e08005bb 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Queue.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Queue.swift
@@ -19,7 +19,7 @@ struct Queue<T>: Sequence {
     typealias Generator = AnyIterator<T>
 
     private let _resizeFactor = 2
-    
+
     private var _storage: ContiguousArray<T?>
     private var _count = 0
     private var _pushNextIndex = 0
@@ -35,50 +35,50 @@ struct Queue<T>: Sequence {
 
         _storage = ContiguousArray<T?>(repeating: nil, count: capacity)
     }
-    
+
     private var dequeueIndex: Int {
         let index = _pushNextIndex - count
         return index < 0 ? index + _storage.count : index
     }
-    
+
     /// - returns: Is queue empty.
     var isEmpty: Bool {
         return count == 0
     }
-    
+
     /// - returns: Number of elements inside queue.
     var count: Int {
         return _count
     }
-    
+
     /// - returns: Element in front of a list of elements to `dequeue`.
     func peek() -> T {
         precondition(count > 0)
-        
+
         return _storage[dequeueIndex]!
     }
-    
+
     mutating private func resizeTo(_ size: Int) {
         var newStorage = ContiguousArray<T?>(repeating: nil, count: size)
-        
+
         let count = _count
-        
+
         let dequeueIndex = self.dequeueIndex
         let spaceToEndOfQueue = _storage.count - dequeueIndex
-        
+
         // first batch is from dequeue index to end of array
         let countElementsInFirstBatch = Swift.min(count, spaceToEndOfQueue)
         // second batch is wrapped from start of array to end of queue
         let numberOfElementsInSecondBatch = count - countElementsInFirstBatch
-        
+
         newStorage[0 ..< countElementsInFirstBatch] = _storage[dequeueIndex ..< (dequeueIndex + countElementsInFirstBatch)]
         newStorage[countElementsInFirstBatch ..< (countElementsInFirstBatch + numberOfElementsInSecondBatch)] = _storage[0 ..< numberOfElementsInSecondBatch]
-        
+
         _count = count
         _pushNextIndex = count
         _storage = newStorage
     }
-    
+
     /// Enqueues `element`.
     ///
     /// - parameter element: Element to enqueue.
@@ -86,19 +86,19 @@ struct Queue<T>: Sequence {
         if count == _storage.count {
             resizeTo(Swift.max(_storage.count, 1) * _resizeFactor)
         }
-        
+
         _storage[_pushNextIndex] = element
         _pushNextIndex += 1
         _count += 1
-        
+
         if _pushNextIndex >= _storage.count {
             _pushNextIndex -= _storage.count
         }
     }
-    
+
     private mutating func dequeueElementOnly() -> T {
         precondition(count > 0)
-        
+
         let index = dequeueIndex
 
         defer {
@@ -126,7 +126,7 @@ struct Queue<T>: Sequence {
 
         return dequeueElementOnly()
     }
-    
+
     /// - returns: Generator of contained elements.
     func makeIterator() -> AnyIterator<T> {
         var i = dequeueIndex
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DeprecationWarner.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DeprecationWarner.swift
index 863636b7b7a55d0352a6517806eefee498705c46..d2ede7fb482c675bf26567327afadc8b39197110 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DeprecationWarner.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DeprecationWarner.swift
@@ -12,23 +12,23 @@ import Foundation
     class DeprecationWarner {
         private static var warned = Set<Kind>()
         private static var _lock = NSRecursiveLock()
-        
+
         static func warnIfNeeded(_ kind: Kind) {
             _lock.lock(); defer { _lock.unlock() }
             guard !warned.contains(kind) else { return }
-            
+
             warned.insert(kind)
             print("ℹ️ [DEPRECATED] \(kind.message)")
         }
     }
-    
+
     extension DeprecationWarner {
         enum Kind {
             case variable
             case globalTestFunctionNext
             case globalTestFunctionError
             case globalTestFunctionCompleted
-            
+
             var message: String {
                 switch self {
                 case .variable: return "`Variable` is planned for future deprecation. Please consider `BehaviorRelay` as a replacement. Read more at: https://git.io/vNqvx"
@@ -40,4 +40,3 @@ import Foundation
         }
     }
 #endif
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Darwin.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Darwin.swift
index 6dc36add7be8e060ffd2f7ba4c1e7fe2b7abbf60..f75007f442ef16ed960659f5cb6ac4f606450d0c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Darwin.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Darwin.swift
@@ -19,8 +19,7 @@
 
             if let newValue = value {
                 threadDictionary[key] = newValue
-            }
-            else {
+            } else {
                 threadDictionary[key] = nil
             }
         }
@@ -28,7 +27,7 @@
         static func getThreadLocalStorageValueForKey<T>(_ key: NSCopying) -> T? {
             let currentThread = Thread.current
             let threadDictionary = currentThread.threadDictionary
-            
+
             return threadDictionary[key] as? T
         }
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Linux.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Linux.swift
index 570f8f00fa2adf09e598471df1e541da56c23c5f..125fe8863f2cc7265360217f52d50d69cc347337 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Linux.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Linux.swift
@@ -18,8 +18,7 @@
 
             if let newValue = value {
                 threadDictionary[key] = newValue
-            }
-            else {
+            } else {
                 threadDictionary[key] = nil
             }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/AnyObserver.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/AnyObserver.swift
index dd4f9c4086c3e716263892c585dc65aaad8a19c1..4516036439682b27b9b7cbbeca170350c0569df3 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/AnyObserver.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/AnyObserver.swift
@@ -12,7 +12,7 @@
 public struct AnyObserver<Element> : ObserverType {
     /// The type of elements in sequence that observer can observe.
     public typealias E = Element
-    
+
     /// Anonymous event handler type.
     public typealias EventHandler = (Event<Element>) -> Void
 
@@ -24,14 +24,14 @@ public struct AnyObserver<Element> : ObserverType {
     public init(eventHandler: @escaping EventHandler) {
         self.observer = eventHandler
     }
-    
+
     /// Construct an instance whose `on(event)` calls `observer.on(event)`
     ///
     /// - parameter observer: Observer that receives sequence events.
-    public init<O : ObserverType>(_ observer: O) where O.E == Element {
+    public init<O: ObserverType>(_ observer: O) where O.E == Element {
         self.observer = observer.on
     }
-    
+
     /// Send `event` to this observer.
     ///
     /// - parameter event: Event instance.
@@ -49,7 +49,7 @@ public struct AnyObserver<Element> : ObserverType {
 
 extension AnyObserver {
     /// Collection of `AnyObserver`s
-    typealias s = Bag<(Event<Element>) -> ()>
+    typealias s = Bag<(Event<Element>) -> Void>
 }
 
 extension ObserverType {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Cancelable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Cancelable.swift
index 1fa7a67726e59be3772a20c44b13769ec590f609..341807c18cbaf49f73aa8b37d806ea7403776dc7 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Cancelable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Cancelable.swift
@@ -7,7 +7,7 @@
 //
 
 /// Represents disposable resource with state tracking.
-public protocol Cancelable : Disposable {
+public protocol Cancelable: Disposable {
     /// Was resource disposed.
     var isDisposed: Bool { get }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift
index 7fbf8c9c6a4179eae60344be967cf4b6464de170..7d040e7bf1d21a4037ad310b7c7ae0267d971037 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift
@@ -17,13 +17,11 @@ and pending work.
 That means that enqueued work could possibly be executed later on a different thread.
 */
 final class AsyncLock<I: InvocableType>
-    : Disposable
-    , Lock
-    , SynchronizedDisposeType {
+    : Disposable, Lock, SynchronizedDisposeType {
     typealias Action = () -> Void
-    
+
     var _lock = SpinLock()
-    
+
     private var _queue: Queue<I> = Queue(capacity: 0)
 
     private var _isExecuting: Bool = false
@@ -60,8 +58,7 @@ final class AsyncLock<I: InvocableType>
         _lock.lock(); defer { _lock.unlock() } // {
             if !_queue.isEmpty {
                 return _queue.dequeue()
-            }
-            else {
+            } else {
                 _isExecuting = false
                 return nil
             }
@@ -70,27 +67,25 @@ final class AsyncLock<I: InvocableType>
 
     func invoke(_ action: I) {
         let firstEnqueuedAction = enqueue(action)
-        
+
         if let firstEnqueuedAction = firstEnqueuedAction {
             firstEnqueuedAction.invoke()
-        }
-        else {
+        } else {
             // action is enqueued, it's somebody else's concern now
             return
         }
-        
+
         while true {
             let nextAction = dequeue()
 
             if let nextAction = nextAction {
                 nextAction.invoke()
-            }
-            else {
+            } else {
                 return
             }
         }
     }
-    
+
     func dispose() {
         synchronizedDispose()
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/Lock.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/Lock.swift
index 52afc1cb87e7e7c84444bbe806771d4e6090f32d..6f9ff8e4e45b01e823ffe2db2f941f24bc53e9ac 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/Lock.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/Lock.swift
@@ -14,7 +14,7 @@ protocol Lock {
 // https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20151214/000321.html
 typealias SpinLock = RecursiveLock
 
-extension RecursiveLock : Lock {
+extension RecursiveLock: Lock {
     @inline(__always)
     final func performLocked(_ action: () -> Void) {
         lock(); defer { unlock() }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/LockOwnerType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/LockOwnerType.swift
index eca8d8e120b69e0f42a112230d56345e9a2260d4..0f6efdff4afaab176da55d5ed9c0a0026136c0a6 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/LockOwnerType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/LockOwnerType.swift
@@ -6,7 +6,7 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-protocol LockOwnerType : class, Lock {
+protocol LockOwnerType: class, Lock {
     var _lock: RecursiveLock { get }
 }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedDisposeType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedDisposeType.swift
index af9548f6edf5bb1e3318d1f4d8eb8ba82f8dcbff..ba729399b5081eb57dbe270f7305d21aba93180a 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedDisposeType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedDisposeType.swift
@@ -6,7 +6,7 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-protocol SynchronizedDisposeType : class, Disposable, Lock {
+protocol SynchronizedDisposeType: class, Disposable, Lock {
     func _synchronized_dispose()
 }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedOnType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedOnType.swift
index 8dfc5568413f9f988b96c8702ca25560f59dece4..d7923769e21d1bde8e7d1d137a57f98b9a8ace44 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedOnType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedOnType.swift
@@ -6,7 +6,7 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-protocol SynchronizedOnType : class, ObserverType, Lock {
+protocol SynchronizedOnType: class, ObserverType, Lock {
     func _synchronized_on(_ event: Event<E>)
 }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift
index bb1aa7e47df255417253d4beba7234019508c901..29897d4bdb8e0b2c52c2db0b49198e7d6f8ebd74 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift
@@ -6,7 +6,7 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-protocol SynchronizedUnsubscribeType : class {
+protocol SynchronizedUnsubscribeType: class {
     associatedtype DisposeKey
 
     func synchronizedUnsubscribe(_ disposeKey: DisposeKey)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ConnectableObservableType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ConnectableObservableType.swift
index 52bf93c568629606b1ed2515d534b5e59561c5f0..239455a0f9609761a6d6f5fedd9e828eca1c03ad 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ConnectableObservableType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ConnectableObservableType.swift
@@ -9,7 +9,7 @@
 /**
 Represents an observable sequence wrapper that can be connected and disconnected from its underlying observable sequence.
 */
-public protocol ConnectableObservableType : ObservableType {
+public protocol ConnectableObservableType: ObservableType {
     /**
     Connects the observable wrapper to its source. All subscribed observers will receive values from the underlying observable sequence as long as the connection is established.
     
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Deprecated.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Deprecated.swift
index 0337d82c9eba877d3550e58cede5dfec787a7854..2ec47b31095e2d949ef9957cf0bc5f0d8c2feabd 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Deprecated.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Deprecated.swift
@@ -51,7 +51,6 @@ extension ObservableType {
         return enumerated().map { try selector($0.element, $0.index) }
     }
 
-
     /**
 
      Projects each element of an observable sequence to an observable sequence by incorporating the element's index and merges the resulting observable sequences into one observable sequence.
@@ -82,7 +81,6 @@ extension ObservableType {
         return enumerated().skipWhile { try predicate($0.element, $0.index) }.map { $0.element }
     }
 
-
     /**
 
      Returns elements from an observable sequence as long as a specified condition is true.
@@ -113,7 +111,6 @@ extension Disposable {
     }
 }
 
-
 extension ObservableType {
 
     /**
@@ -132,7 +129,6 @@ extension ObservableType {
     }
 }
 
-
 extension ObservableType {
 
     /**
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/AnonymousDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/AnonymousDisposable.swift
index 449ee3da17bbcc23d2118cd21eea0ca7a05f838d..73a8db792741807ea6f7c016e2d05f79d2036acb 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/AnonymousDisposable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/AnonymousDisposable.swift
@@ -9,7 +9,7 @@
 /// Represents an Action-based disposable.
 ///
 /// When dispose method is called, disposal action will be dereferenced.
-fileprivate final class AnonymousDisposable : DisposeBase, Cancelable {
+fileprivate final class AnonymousDisposable: DisposeBase, Cancelable {
     public typealias DisposeAction = () -> Void
 
     private var _isDisposed = AtomicInt(0)
@@ -27,13 +27,13 @@ fileprivate final class AnonymousDisposable : DisposeBase, Cancelable {
         _disposeAction = disposeAction
         super.init()
     }
-    
+
     // Non-deprecated version of the constructor, used by `Disposables.create(with:)`
     fileprivate init(disposeAction: @escaping DisposeAction) {
         _disposeAction = disposeAction
         super.init()
     }
-    
+
     /// Calls the disposal action if and only if the current instance hasn't been disposed yet.
     ///
     /// After invoking disposal action, disposal action will be dereferenced.
@@ -50,12 +50,12 @@ fileprivate final class AnonymousDisposable : DisposeBase, Cancelable {
 }
 
 extension Disposables {
-    
+
     /// Constructs a new disposable with the given action used for disposal.
     ///
     /// - parameter dispose: Disposal action which will be run upon calling `dispose`.
-    public static func create(with dispose: @escaping () -> ()) -> Cancelable {
+    public static func create(with dispose: @escaping () -> Void) -> Cancelable {
         return AnonymousDisposable(disposeAction: dispose)
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BinaryDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BinaryDisposable.swift
index 949476cf128331ecda1f8b27aa4917ef01b76548..ee95e422e985b501e4c9ea00fa00d4e306ff4d01 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BinaryDisposable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BinaryDisposable.swift
@@ -7,7 +7,7 @@
 //
 
 /// Represents two disposable resources that are disposed together.
-private final class BinaryDisposable : DisposeBase, Cancelable {
+private final class BinaryDisposable: DisposeBase, Cancelable {
 
     private var _isDisposed = AtomicInt(0)
 
@@ -44,10 +44,10 @@ private final class BinaryDisposable : DisposeBase, Cancelable {
 }
 
 extension Disposables {
-    
+
     /// Creates a disposable with the given disposables.
     public static func create(_ disposable1: Disposable, _ disposable2: Disposable) -> Cancelable {
         return BinaryDisposable(disposable1, disposable2)
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift
index efae55e410b04d0650b37351c24141218990e623..0e6a7da9cfd426f39df2d6c14d1b24640e9061f4 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift
@@ -7,25 +7,25 @@
 //
 
 /// Represents a disposable resource that can be checked for disposal status.
-public final class BooleanDisposable : Cancelable {
+public final class BooleanDisposable: Cancelable {
 
     internal static let BooleanDisposableTrue = BooleanDisposable(isDisposed: true)
     private var _isDisposed = false
-    
+
     /// Initializes a new instance of the `BooleanDisposable` class
     public init() {
     }
-    
+
     /// Initializes a new instance of the `BooleanDisposable` class with given value
     public init(isDisposed: Bool) {
         self._isDisposed = isDisposed
     }
-    
+
     /// - returns: Was resource disposed.
     public var isDisposed: Bool {
         return _isDisposed
     }
-    
+
     /// Sets the status to disposed, which can be observer through the `isDisposed` property.
     public func dispose() {
         _isDisposed = true
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/CompositeDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/CompositeDisposable.swift
index b0578172382de7075616dcc0ce72d598792350f0..46790ac8f66cfa0d268096f2ccab01255f1f1aaa 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/CompositeDisposable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/CompositeDisposable.swift
@@ -7,7 +7,7 @@
 //
 
 /// Represents a group of disposable resources that are disposed together.
-public final class CompositeDisposable : DisposeBase, Cancelable {
+public final class CompositeDisposable: DisposeBase, Cancelable {
     /// Key used to remove disposable from composite disposable
     public struct DisposeKey {
         fileprivate let key: BagKey
@@ -17,7 +17,7 @@ public final class CompositeDisposable : DisposeBase, Cancelable {
     }
 
     private var _lock = SpinLock()
-    
+
     // state
     private var _disposables: Bag<Disposable>? = Bag()
 
@@ -25,42 +25,42 @@ public final class CompositeDisposable : DisposeBase, Cancelable {
         _lock.lock(); defer { _lock.unlock() }
         return _disposables == nil
     }
-    
+
     public override init() {
     }
-    
+
     /// Initializes a new instance of composite disposable with the specified number of disposables.
     public init(_ disposable1: Disposable, _ disposable2: Disposable) {
         // This overload is here to make sure we are using optimized version up to 4 arguments.
-        let _ = _disposables!.insert(disposable1)
-        let _ = _disposables!.insert(disposable2)
+        _ = _disposables!.insert(disposable1)
+        _ = _disposables!.insert(disposable2)
     }
-    
+
     /// Initializes a new instance of composite disposable with the specified number of disposables.
     public init(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable) {
         // This overload is here to make sure we are using optimized version up to 4 arguments.
-        let _ = _disposables!.insert(disposable1)
-        let _ = _disposables!.insert(disposable2)
-        let _ = _disposables!.insert(disposable3)
+        _ = _disposables!.insert(disposable1)
+        _ = _disposables!.insert(disposable2)
+        _ = _disposables!.insert(disposable3)
     }
-    
+
     /// Initializes a new instance of composite disposable with the specified number of disposables.
     public init(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable, _ disposable4: Disposable, _ disposables: Disposable...) {
         // This overload is here to make sure we are using optimized version up to 4 arguments.
-        let _ = _disposables!.insert(disposable1)
-        let _ = _disposables!.insert(disposable2)
-        let _ = _disposables!.insert(disposable3)
-        let _ = _disposables!.insert(disposable4)
-        
+        _ = _disposables!.insert(disposable1)
+        _ = _disposables!.insert(disposable2)
+        _ = _disposables!.insert(disposable3)
+        _ = _disposables!.insert(disposable4)
+
         for disposable in disposables {
-            let _ = _disposables!.insert(disposable)
+            _ = _disposables!.insert(disposable)
         }
     }
-    
+
     /// Initializes a new instance of composite disposable with the specified number of disposables.
     public init(disposables: [Disposable]) {
         for disposable in disposables {
-            let _ = _disposables!.insert(disposable)
+            _ = _disposables!.insert(disposable)
         }
     }
 
@@ -73,39 +73,39 @@ public final class CompositeDisposable : DisposeBase, Cancelable {
      */
     public func insert(_ disposable: Disposable) -> DisposeKey? {
         let key = _insert(disposable)
-        
+
         if key == nil {
             disposable.dispose()
         }
-        
+
         return key
     }
-    
+
     private func _insert(_ disposable: Disposable) -> DisposeKey? {
         _lock.lock(); defer { _lock.unlock() }
 
         let bagKey = _disposables?.insert(disposable)
         return bagKey.map(DisposeKey.init)
     }
-    
+
     /// - returns: Gets the number of disposables contained in the `CompositeDisposable`.
     public var count: Int {
         _lock.lock(); defer { _lock.unlock() }
         return _disposables?.count ?? 0
     }
-    
+
     /// Removes and disposes the disposable identified by `disposeKey` from the CompositeDisposable.
     ///
     /// - parameter disposeKey: Key used to identify disposable to be removed.
     public func remove(for disposeKey: DisposeKey) {
         _remove(for: disposeKey)?.dispose()
     }
-    
+
     private func _remove(for disposeKey: DisposeKey) -> Disposable? {
         _lock.lock(); defer { _lock.unlock() }
         return _disposables?.removeKey(disposeKey.key)
     }
-    
+
     /// Disposes all disposables in the group and removes them from the group.
     public func dispose() {
         if let disposables = _dispose() {
@@ -129,7 +129,7 @@ extension Disposables {
     public static func create(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable) -> Cancelable {
         return CompositeDisposable(disposable1, disposable2, disposable3)
     }
-    
+
     /// Creates a disposable with the given disposables.
     public static func create(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable, _ disposables: Disposable ...) -> Cancelable {
         var disposables = disposables
@@ -138,7 +138,7 @@ extension Disposables {
         disposables.append(disposable3)
         return CompositeDisposable(disposables: disposables)
     }
-    
+
     /// Creates a disposable with the given disposables.
     public static func create(_ disposables: [Disposable]) -> Cancelable {
         switch disposables.count {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/Disposables.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/Disposables.swift
index 8cd6e28c3c90f311c0104fe95bbe8c6593592f4d..fbee0bc5b8ed843338dda86f9665ce225428b246 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/Disposables.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/Disposables.swift
@@ -10,4 +10,3 @@
 public struct Disposables {
     private init() {}
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift
index 9a2386d1598cef9428177ce070a09abea6f04616..edb449d467fc42dcbc6b9d72f7161e07dbf32faf 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift
@@ -28,13 +28,13 @@ or create a new one in its place.
 In case explicit disposal is necessary, there is also `CompositeDisposable`.
 */
 public final class DisposeBag: DisposeBase {
-    
+
     private var _lock = SpinLock()
-    
+
     // state
     fileprivate var _disposables = [Disposable]()
     fileprivate var _isDisposed = false
-    
+
     /// Constructs new empty dispose bag.
     public override init() {
         super.init()
@@ -46,7 +46,7 @@ public final class DisposeBag: DisposeBase {
     public func insert(_ disposable: Disposable) {
         _insert(disposable)?.dispose()
     }
-    
+
     private func _insert(_ disposable: Disposable) -> Disposable? {
         _lock.lock(); defer { _lock.unlock() }
         if _isDisposed {
@@ -71,13 +71,13 @@ public final class DisposeBag: DisposeBase {
         _lock.lock(); defer { _lock.unlock() }
 
         let disposables = _disposables
-        
+
         _disposables.removeAll(keepingCapacity: false)
         _isDisposed = true
-        
+
         return disposables
     }
-    
+
     deinit {
         dispose()
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBase.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBase.swift
index 8c6a44f0b8ff8a0e2845b6560c9e88aad6e4c23c..08cd2dd263e94048af082e90dbced66032a8e055 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBase.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBase.swift
@@ -10,13 +10,13 @@
 public class DisposeBase {
     init() {
 #if TRACE_RESOURCES
-    let _ = Resources.incrementTotal()
+    _ = Resources.incrementTotal()
 #endif
     }
-    
+
     deinit {
 #if TRACE_RESOURCES
-    let _ = Resources.decrementTotal()
+    _ = Resources.decrementTotal()
 #endif
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift
index 149f86643425e6d5faa4b73acbf3975c8629a5d4..24fb5acc61f0de29800d63ace8fa9c9bbecc2c23 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift
@@ -9,14 +9,14 @@
 /// Represents a disposable that does nothing on disposal.
 ///
 /// Nop = No Operation
-fileprivate struct NopDisposable : Disposable {
- 
+private struct NopDisposable: Disposable {
+
     fileprivate static let noOp: Disposable = NopDisposable()
-    
+
     fileprivate init() {
-        
+
     }
-    
+
     /// Does nothing.
     public func dispose() {
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift
index 664603c8782f2c0286e3ae419ca560c4f4678551..f40fd84ff4f2fce605d6c38c2f73d17a9ace6268 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift
@@ -7,7 +7,7 @@
 //
 
 /// Represents a disposable resource that only disposes its underlying disposable resource when all dependent disposable objects have been disposed.
-public final class RefCountDisposable : DisposeBase, Cancelable {
+public final class RefCountDisposable: DisposeBase, Cancelable {
     private var _lock = SpinLock()
     private var _disposable = nil as Disposable?
     private var _primaryDisposed = false
@@ -35,7 +35,7 @@ public final class RefCountDisposable : DisposeBase, Cancelable {
             if let _ = _disposable {
 
                 do {
-                    let _ = try incrementChecked(&_count)
+                    _ = try incrementChecked(&_count)
                 } catch (_) {
                     rxFatalError("RefCountDisposable increment failed")
                 }
@@ -50,12 +50,10 @@ public final class RefCountDisposable : DisposeBase, Cancelable {
     /// Disposes the underlying disposable only when all dependent disposables have been disposed.
     public func dispose() {
         let oldDisposable: Disposable? = _lock.calculateLocked {
-            if let oldDisposable = _disposable, !_primaryDisposed
-            {
+            if let oldDisposable = _disposable, !_primaryDisposed {
                 _primaryDisposed = true
 
-                if (_count == 0)
-                {
+                if (_count == 0) {
                     _disposable = nil
                     return oldDisposable
                 }
@@ -73,7 +71,7 @@ public final class RefCountDisposable : DisposeBase, Cancelable {
         let oldDisposable: Disposable? = _lock.calculateLocked {
             if let oldDisposable = _disposable {
                 do {
-                    let _ = try decrementChecked(&_count)
+                    _ = try decrementChecked(&_count)
                 } catch (_) {
                     rxFatalError("RefCountDisposable decrement on release failed")
                 }
@@ -97,19 +95,16 @@ public final class RefCountDisposable : DisposeBase, Cancelable {
     }
 }
 
-internal final class RefCountInnerDisposable: DisposeBase, Disposable
-{
+internal final class RefCountInnerDisposable: DisposeBase, Disposable {
     private let _parent: RefCountDisposable
     private var _isDisposed = AtomicInt(0)
 
-    init(_ parent: RefCountDisposable)
-    {
+    init(_ parent: RefCountDisposable) {
         _parent = parent
         super.init()
     }
 
-    internal func dispose()
-    {
+    internal func dispose() {
         if _isDisposed.fetchOr(1) == 0 {
             _parent.release()
         }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/ScheduledDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/ScheduledDisposable.swift
index 564a3a263b35d19f0058b6ed019ac341d53dce9a..fffd5881c34d646c0b8369c22c5efed82541acfa 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/ScheduledDisposable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/ScheduledDisposable.swift
@@ -12,7 +12,7 @@ private let disposeScheduledDisposable: (ScheduledDisposable) -> Disposable = {
 }
 
 /// Represents a disposable resource whose disposal invocation will be scheduled on the specified scheduler.
-public final class ScheduledDisposable : Cancelable {
+public final class ScheduledDisposable: Cancelable {
     public let scheduler: ImmediateSchedulerType
 
     private var _isDisposed = AtomicInt(0)
@@ -38,7 +38,7 @@ public final class ScheduledDisposable : Cancelable {
 
     /// Disposes the wrapped disposable on the provided scheduler.
     public func dispose() {
-        let _ = scheduler.schedule(self, action: disposeScheduledDisposable)
+        _ = scheduler.schedule(self, action: disposeScheduledDisposable)
     }
 
     func disposeInner() {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift
index 6373d2bba53be04473351168dbc842e8c4f6e51c..0932f568ecdd681a84e3d2acaf99990223773518 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift
@@ -7,23 +7,23 @@
 //
 
 /// Represents a disposable resource whose underlying disposable resource can be replaced by another disposable resource, causing automatic disposal of the previous underlying disposable resource.
-public final class SerialDisposable : DisposeBase, Cancelable {
+public final class SerialDisposable: DisposeBase, Cancelable {
     private var _lock = SpinLock()
-    
+
     // state
     private var _current = nil as Disposable?
     private var _isDisposed = false
-    
+
     /// - returns: Was resource disposed.
     public var isDisposed: Bool {
         return _isDisposed
     }
-    
+
     /// Initializes a new instance of the `SerialDisposable`.
     override public init() {
         super.init()
     }
-    
+
     /**
     Gets or sets the underlying disposable.
     
@@ -41,20 +41,19 @@ public final class SerialDisposable : DisposeBase, Cancelable {
             let disposable: Disposable? = _lock.calculateLocked {
                 if _isDisposed {
                     return newDisposable
-                }
-                else {
+                } else {
                     let toDispose = _current
                     _current = newDisposable
                     return toDispose
                 }
             }
-            
+
             if let disposable = disposable {
                 disposable.dispose()
             }
         }
     }
-    
+
     /// Disposes the underlying disposable as well as all future replacements.
     public func dispose() {
         _dispose()?.dispose()
@@ -64,8 +63,7 @@ public final class SerialDisposable : DisposeBase, Cancelable {
         _lock.lock(); defer { _lock.unlock() }
         if _isDisposed {
             return nil
-        }
-        else {
+        } else {
             _isDisposed = true
             let current = _current
             _current = nil
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SingleAssignmentDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SingleAssignmentDisposable.swift
index f34fac6bbd0786cea05f05df6cb84f5db53213a8..6ff65235dfab6ed2e490490ab2abbf39506885dc 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SingleAssignmentDisposable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SingleAssignmentDisposable.swift
@@ -11,7 +11,7 @@ Represents a disposable resource which only allows a single assignment of its un
 
 If an underlying disposable resource has already been set, future attempts to set the underlying disposable resource will throw an exception.
 */
-public final class SingleAssignmentDisposable : DisposeBase, Cancelable {
+public final class SingleAssignmentDisposable: DisposeBase, Cancelable {
 
     fileprivate enum DisposeState: Int32 {
         case disposed = 1
@@ -39,7 +39,7 @@ public final class SingleAssignmentDisposable : DisposeBase, Cancelable {
         _disposable = disposable
 
         let previousState = _state.fetchOr(DisposeState.disposableSet.rawValue)
-        
+
         if (previousState & DisposeState.disposableSet.rawValue) != 0 {
             rxFatalError("oldState.disposable != nil")
         }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Errors.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Errors.swift
index f17b52d882a8b2d39a2f07467c3610e214c9669e..648918e16fecf052fd2f0f855f11e1a964bda9b2 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Errors.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Errors.swift
@@ -10,9 +10,7 @@ let RxErrorDomain       = "RxErrorDomain"
 let RxCompositeFailures = "RxCompositeFailures"
 
 /// Generic Rx error codes.
-public enum RxError
-    : Swift.Error
-    , CustomDebugStringConvertible {
+public enum RxError: Swift.Error, CustomDebugStringConvertible {
     /// Unknown error occurred.
     case unknown
     /// Performing an action on disposed object.
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Event.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Event.swift
index 9193e3504d4d711201522c09a653427bf3573d4b..1386ba8a4941de6e1f96e5a38e6af045b4ee0347 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Event.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Event.swift
@@ -21,7 +21,7 @@ public enum Event<Element> {
     case completed
 }
 
-extension Event : CustomDebugStringConvertible {
+extension Event: CustomDebugStringConvertible {
     /// Description of event.
     public var debugDescription: String {
         switch self {
@@ -82,8 +82,7 @@ extension Event {
             case .completed:
                 return .completed
             }
-        }
-        catch let e {
+        } catch let e {
             return .error(e)
         }
     }
@@ -98,7 +97,7 @@ public protocol EventConvertible {
     var event: Event<ElementType> { get }
 }
 
-extension Event : EventConvertible {
+extension Event: EventConvertible {
     /// Event representation of this instance
     public var event: Event<Element> {
         return self
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift
index 748578d918ed0f4b4886c783fa90b2553c942cea..0b228b8a3f8d4fd5c32f5bb27520210545381920 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift
@@ -6,11 +6,10 @@
 //  Copyright © 2016 Krunoslav Zaher. All rights reserved.
 //
 
-
 // MARK: forEach
 
 @inline(__always)
-func dispatch<E>(_ bag: Bag<(Event<E>) -> ()>, _ event: Event<E>) {
+func dispatch<E>(_ bag: Bag<(Event<E>) -> Void>, _ event: Event<E>) {
     bag._value0?(event)
 
     if bag._onlyFastPath {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/GroupedObservable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/GroupedObservable.swift
index d87e0bad029ec47fe8c0de72592a271a75e40d5d..432f50d23b2ba5c39d4860aaf303db1004fcc752 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/GroupedObservable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/GroupedObservable.swift
@@ -26,7 +26,7 @@ public struct GroupedObservable<Key, Element> : ObservableType {
     }
 
     /// Subscribes `observer` to receive events for this sequence.
-    public func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == E {
+    public func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == E {
         return self.source.subscribe(observer)
     }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ImmediateSchedulerType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ImmediateSchedulerType.swift
index 8dc2a85c497cfc29562e9db48703091f31abf421..de9f9ee925099d3ebafc14fd9601f00f2b65b17c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ImmediateSchedulerType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ImmediateSchedulerType.swift
@@ -26,11 +26,11 @@ extension ImmediateSchedulerType {
     - parameter action: Action to execute recursively. The last parameter passed to the action is used to trigger recursive scheduling of the action, passing in recursive invocation state.
     - returns: The disposable object used to cancel the scheduled action (best effort).
     */
-    public func scheduleRecursive<State>(_ state: State, action: @escaping (_ state: State, _ recurse: (State) -> ()) -> ()) -> Disposable {
+    public func scheduleRecursive<State>(_ state: State, action: @escaping (_ state: State, _ recurse: (State) -> Void) -> Void) -> Disposable {
         let recursiveScheduler = RecursiveImmediateScheduler(action: action, scheduler: self)
-        
+
         recursiveScheduler.schedule(state)
-        
+
         return Disposables.create(with: recursiveScheduler.dispose)
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observable.swift
index f0c55af714aa230df9805b5b32514b9f6d9550df..6ba34b1fbeb7c4e4d1b39fd5a10a788089909013 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observable.swift
@@ -12,24 +12,24 @@
 public class Observable<Element> : ObservableType {
     /// Type of elements in sequence.
     public typealias E = Element
-    
+
     init() {
 #if TRACE_RESOURCES
-        let _ = Resources.incrementTotal()
+        _ = Resources.incrementTotal()
 #endif
     }
-    
+
     public func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == E {
         rxAbstractMethod()
     }
-    
+
     public func asObservable() -> Observable<E> {
         return self
     }
-    
+
     deinit {
 #if TRACE_RESOURCES
-        let _ = Resources.decrementTotal()
+        _ = Resources.decrementTotal()
 #endif
     }
 
@@ -41,4 +41,3 @@ public class Observable<Element> : ObservableType {
         return _map(source: self, transform: transform)
     }
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift
index 29ed8a29f2562a8c5faaec6fa0a95258f534b998..0d07788cbdb9ac8d5f399a48e96d2ae128caa116 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift
@@ -24,8 +24,7 @@ extension ObservableType {
             }
             return self.asObservable().subscribe(observer)
     }
-    
-    
+
     /**
      Subscribes an element handler, an error handler, a completion handler and disposed handler to an observable sequence.
      
@@ -39,35 +38,33 @@ extension ObservableType {
     public func subscribe(onNext: ((E) -> Void)? = nil, onError: ((Swift.Error) -> Void)? = nil, onCompleted: (() -> Void)? = nil, onDisposed: (() -> Void)? = nil)
         -> Disposable {
             let disposable: Disposable
-            
+
             if let disposed = onDisposed {
                 disposable = Disposables.create(with: disposed)
-            }
-            else {
+            } else {
                 disposable = Disposables.create()
             }
-            
+
             #if DEBUG
                 let synchronizationTracker = SynchronizationTracker()
             #endif
-            
+
             let callStack = Hooks.recordCallStackOnError ? Hooks.customCaptureSubscriptionCallstack() : []
-            
+
             let observer = AnonymousObserver<E> { event in
-                
+
                 #if DEBUG
                     synchronizationTracker.register(synchronizationErrorMessage: .default)
                     defer { synchronizationTracker.unregister() }
                 #endif
-                
+
                 switch event {
                 case .next(let value):
                     onNext?(value)
                 case .error(let error):
                     if let onError = onError {
                         onError(error)
-                    }
-                    else {
+                    } else {
                         Hooks.defaultErrorHandler(callStack, error)
                     }
                     disposable.dispose()
@@ -86,7 +83,7 @@ extension ObservableType {
 import class Foundation.NSRecursiveLock
 
 extension Hooks {
-    public typealias DefaultErrorHandler = (_ subscriptionCallStack: [String], _ error: Error) -> ()
+    public typealias DefaultErrorHandler = (_ subscriptionCallStack: [String], _ error: Error) -> Void
     public typealias CustomCaptureSubscriptionCallstack = () -> [String]
 
     fileprivate static let _lock = RecursiveLock()
@@ -115,7 +112,7 @@ extension Hooks {
             _defaultErrorHandler = newValue
         }
     }
-    
+
     /// Subscription callstack block to fetch custom callstack information.
     public static var customCaptureSubscriptionCallstack: CustomCaptureSubscriptionCallstack {
         get {
@@ -128,4 +125,3 @@ extension Hooks {
         }
     }
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType.swift
index e41a36a1ae631a0d932789bc656e016e0fd056be..5f2a0219ab0feb0d677731ac84c6e18151bab326 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType.swift
@@ -7,7 +7,7 @@
 //
 
 /// Represents a push style sequence.
-public protocol ObservableType : ObservableConvertibleType {
+public protocol ObservableType: ObservableConvertibleType {
     /**
     Subscribes `observer` to receive events for this sequence.
     
@@ -35,7 +35,7 @@ public protocol ObservableType : ObservableConvertibleType {
 }
 
 extension ObservableType {
-    
+
     /// Default implementation of converting `ObservableType` to `Observable`.
     public func asObservable() -> Observable<E> {
         // temporary workaround
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AddRef.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AddRef.swift
index b782c13f49058876f741bfd787f62f43e1e56948..2d107dc49b903ebe1da32d829a9656e782b794c4 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AddRef.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AddRef.swift
@@ -8,16 +8,16 @@
 
 final class AddRefSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias Element = O.E
-    
+
     override init(observer: O, cancel: Cancelable) {
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<Element>) {
         switch event {
-        case .next(_):
+        case .next:
             forwardOn(event)
-        case .completed, .error(_):
+        case .completed, .error:
             forwardOn(event)
             dispose()
         }
@@ -26,15 +26,15 @@ final class AddRefSink<O: ObserverType> : Sink<O>, ObserverType {
 
 final class AddRef<Element> : Producer<Element> {
     typealias EventHandler = (Event<Element>) throws -> Void
-    
+
     private let _source: Observable<Element>
     private let _refCount: RefCountDisposable
-    
+
     init(source: Observable<Element>, refCount: RefCountDisposable) {
         _source = source
         _refCount = refCount
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let releaseDisposable = _refCount.retain()
         let sink = AddRefSink(observer: observer, cancel: cancel)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Amb.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Amb.swift
index 08ec04e1caddb67781e22b68f1f855002ee088b7..93b49fcfadf5278a2f9a07465bc11f7dbdc96630 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Amb.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Amb.swift
@@ -39,67 +39,67 @@ extension ObservableType {
     }
 }
 
-fileprivate enum AmbState {
+private enum AmbState {
     case neither
     case left
     case right
 }
 
-final fileprivate class AmbObserver<O: ObserverType> : ObserverType {
+final private class AmbObserver<O: ObserverType> : ObserverType {
     typealias Element = O.E
     typealias Parent = AmbSink<O>
     typealias This = AmbObserver<O>
     typealias Sink = (This, Event<Element>) -> Void
-    
+
     fileprivate let _parent: Parent
     fileprivate var _sink: Sink
     fileprivate var _cancel: Disposable
-    
+
     init(parent: Parent, cancel: Disposable, sink: @escaping Sink) {
 #if TRACE_RESOURCES
-        let _ = Resources.incrementTotal()
+        _ = Resources.incrementTotal()
 #endif
-        
+
         _parent = parent
         _sink = sink
         _cancel = cancel
     }
-    
+
     func on(_ event: Event<Element>) {
         _sink(self, event)
         if event.isStopEvent {
             _cancel.dispose()
         }
     }
-    
+
     deinit {
 #if TRACE_RESOURCES
-        let _ = Resources.decrementTotal()
+        _ = Resources.decrementTotal()
 #endif
     }
 }
 
-final fileprivate class AmbSink<O: ObserverType> : Sink<O> {
+final private class AmbSink<O: ObserverType> : Sink<O> {
     typealias ElementType = O.E
     typealias Parent = Amb<ElementType>
     typealias AmbObserverType = AmbObserver<O>
 
     private let _parent: Parent
-    
+
     private let _lock = RecursiveLock()
     // state
     private var _choice = AmbState.neither
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         let subscription1 = SingleAssignmentDisposable()
         let subscription2 = SingleAssignmentDisposable()
         let disposeAll = Disposables.create(subscription1, subscription2)
-        
+
         let forwardEvent = { (o: AmbObserverType, event: Event<ElementType>) -> Void in
             self.forwardOn(event)
             if event.isStopEvent {
@@ -115,7 +115,7 @@ final fileprivate class AmbSink<O: ObserverType> : Sink<O> {
                     o._cancel = disposeAll
                     otherSubscription.dispose()
                 }
-                
+
                 if self._choice == me {
                     self.forwardOn(event)
                     if event.isStopEvent {
@@ -124,32 +124,32 @@ final fileprivate class AmbSink<O: ObserverType> : Sink<O> {
                 }
             }
         }
-        
+
         let sink1 = AmbObserver(parent: self, cancel: subscription1) { o, e in
             decide(o, e, .left, subscription2)
         }
-        
+
         let sink2 = AmbObserver(parent: self, cancel: subscription1) { o, e in
             decide(o, e, .right, subscription1)
         }
-        
+
         subscription1.setDisposable(_parent._left.subscribe(sink1))
         subscription2.setDisposable(_parent._right.subscribe(sink2))
-        
+
         return disposeAll
     }
 }
 
-final fileprivate class Amb<Element>: Producer<Element> {
+final private class Amb<Element>: Producer<Element> {
     fileprivate let _left: Observable<Element>
     fileprivate let _right: Observable<Element>
-    
+
     init(left: Observable<Element>, right: Observable<Element>) {
         _left = left
         _right = right
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = AmbSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsMaybe.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsMaybe.swift
index 36fa685fa84c303861a1d2bfbb2bb818bdb295f6..d2c169c4260d0ff9dc39264daf6093bea3408a19 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsMaybe.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsMaybe.swift
@@ -10,7 +10,7 @@ fileprivate final class AsMaybeSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias ElementType = O.E
     typealias E = ElementType
 
-    private var _element: Event<E>? = nil
+    private var _element: Event<E>?
 
     func on(_ event: Event<E>) {
         switch event {
@@ -41,7 +41,7 @@ final class AsMaybe<Element>: Producer<Element> {
         _source = source
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = AsMaybeSink(observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsSingle.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsSingle.swift
index 080aa8e1a1cb3654d1fe63b20e6d542d4a9bc70f..61e3e6eb9d8cf84c029c069504a766ae39df29dc 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsSingle.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsSingle.swift
@@ -10,7 +10,7 @@ fileprivate final class AsSingleSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias ElementType = O.E
     typealias E = ElementType
 
-    private var _element: Event<E>? = nil
+    private var _element: Event<E>?
 
     func on(_ event: Event<E>) {
         switch event {
@@ -28,8 +28,7 @@ fileprivate final class AsSingleSink<O: ObserverType> : Sink<O>, ObserverType {
             if let element = _element {
                 forwardOn(element)
                 forwardOn(.completed)
-            }
-            else {
+            } else {
                 forwardOn(.error(RxError.noElements))
             }
             dispose()
@@ -44,7 +43,7 @@ final class AsSingle<Element>: Producer<Element> {
         _source = source
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = AsSingleSink(observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Buffer.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Buffer.swift
index b8c33ae818daf326e3730653b11563664f0ac3e0..f270c3807dabf7c049b138f03746673c22c5178f 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Buffer.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Buffer.swift
@@ -26,65 +26,62 @@ extension ObservableType {
     }
 }
 
-final fileprivate class BufferTimeCount<Element> : Producer<[Element]> {
-    
+final private class BufferTimeCount<Element> : Producer<[Element]> {
+
     fileprivate let _timeSpan: RxTimeInterval
     fileprivate let _count: Int
     fileprivate let _scheduler: SchedulerType
     fileprivate let _source: Observable<Element>
-    
+
     init(source: Observable<Element>, timeSpan: RxTimeInterval, count: Int, scheduler: SchedulerType) {
         _source = source
         _timeSpan = timeSpan
         _count = count
         _scheduler = scheduler
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == [Element] {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == [Element] {
         let sink = BufferTimeCountSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
     }
 }
 
-final fileprivate class BufferTimeCountSink<Element, O: ObserverType>
-    : Sink<O>
-    , LockOwnerType
-    , ObserverType
-    , SynchronizedOnType where O.E == [Element] {
+final private class BufferTimeCountSink<Element, O: ObserverType>
+    : Sink<O>, LockOwnerType, ObserverType, SynchronizedOnType where O.E == [Element] {
     typealias Parent = BufferTimeCount<Element>
     typealias E = Element
-    
+
     private let _parent: Parent
-    
+
     let _lock = RecursiveLock()
-    
+
     // state
     private let _timerD = SerialDisposable()
     private var _buffer = [Element]()
     private var _windowID = 0
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
- 
+
     func run() -> Disposable {
         createTimer(_windowID)
         return Disposables.create(_timerD, _parent._source.subscribe(self))
     }
-    
+
     func startNewWindowAndSendCurrentOne() {
         _windowID = _windowID &+ 1
         let windowID = _windowID
-        
+
         let buffer = _buffer
         _buffer = []
         forwardOn(.next(buffer))
-        
+
         createTimer(windowID)
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -93,11 +90,11 @@ final fileprivate class BufferTimeCountSink<Element, O: ObserverType>
         switch event {
         case .next(let element):
             _buffer.append(element)
-            
+
             if _buffer.count == _parent._count {
                 startNewWindowAndSendCurrentOne()
             }
-            
+
         case .error(let error):
             _buffer = []
             forwardOn(.error(error))
@@ -108,18 +105,18 @@ final fileprivate class BufferTimeCountSink<Element, O: ObserverType>
             dispose()
         }
     }
-    
+
     func createTimer(_ windowID: Int) {
         if _timerD.isDisposed {
             return
         }
-        
+
         if _windowID != windowID {
             return
         }
 
         let nextTimer = SingleAssignmentDisposable()
-        
+
         _timerD.disposable = nextTimer
 
         let disposable = _parent._scheduler.scheduleRelative(windowID, dueTime: _parent._timeSpan) { previousWindowID in
@@ -127,10 +124,10 @@ final fileprivate class BufferTimeCountSink<Element, O: ObserverType>
                 if previousWindowID != self._windowID {
                     return
                 }
-             
+
                 self.startNewWindowAndSendCurrentOne()
             }
-            
+
             return Disposables.create()
         }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Catch.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Catch.swift
index 187eb8a98867f6f3daf24745286187c4f8e63d15..447d9e30ceb9add82a329e48ad8d964cbd5c0ef9 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Catch.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Catch.swift
@@ -33,7 +33,7 @@ extension ObservableType {
         -> Observable<E> {
         return Catch(source: asObservable(), handler: { _ in Observable.just(element) })
     }
-    
+
 }
 
 extension ObservableType {
@@ -83,19 +83,19 @@ extension ObservableType {
 
 // catch with callback
 
-final fileprivate class CatchSinkProxy<O: ObserverType> : ObserverType {
+final private class CatchSinkProxy<O: ObserverType> : ObserverType {
     typealias E = O.E
     typealias Parent = CatchSink<O>
-    
+
     private let _parent: Parent
-    
+
     init(parent: Parent) {
         _parent = parent
     }
-    
+
     func on(_ event: Event<E>) {
         _parent.forwardOn(event)
-        
+
         switch event {
         case .next:
             break
@@ -105,18 +105,18 @@ final fileprivate class CatchSinkProxy<O: ObserverType> : ObserverType {
     }
 }
 
-final fileprivate class CatchSink<O: ObserverType> : Sink<O>, ObserverType {
+final private class CatchSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias E = O.E
     typealias Parent = Catch<E>
-    
+
     private let _parent: Parent
     private let _subscription = SerialDisposable()
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         let d1 = SingleAssignmentDisposable()
         _subscription.disposable = d1
@@ -124,7 +124,7 @@ final fileprivate class CatchSink<O: ObserverType> : Sink<O>, ObserverType {
 
         return _subscription
     }
-    
+
     func on(_ event: Event<E>) {
         switch event {
         case .next:
@@ -137,10 +137,9 @@ final fileprivate class CatchSink<O: ObserverType> : Sink<O>, ObserverType {
                 let catchSequence = try _parent._handler(error)
 
                 let observer = CatchSinkProxy(parent: self)
-                
+
                 _subscription.disposable = catchSequence.subscribe(observer)
-            }
-            catch let e {
+            } catch let e {
                 forwardOn(.error(e))
                 dispose()
             }
@@ -148,17 +147,17 @@ final fileprivate class CatchSink<O: ObserverType> : Sink<O>, ObserverType {
     }
 }
 
-final fileprivate class Catch<Element> : Producer<Element> {
+final private class Catch<Element> : Producer<Element> {
     typealias Handler = (Swift.Error) throws -> Observable<Element>
-    
+
     fileprivate let _source: Observable<Element>
     fileprivate let _handler: Handler
-    
+
     init(source: Observable<Element>, handler: @escaping Handler) {
         _source = source
         _handler = handler
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = CatchSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
@@ -168,18 +167,17 @@ final fileprivate class Catch<Element> : Producer<Element> {
 
 // catch enumerable
 
-final fileprivate class CatchSequenceSink<S: Sequence, O: ObserverType>
-    : TailRecursiveSink<S, O>
-    , ObserverType where S.Iterator.Element : ObservableConvertibleType, S.Iterator.Element.E == O.E {
+final private class CatchSequenceSink<S: Sequence, O: ObserverType>
+    : TailRecursiveSink<S, O>, ObserverType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E {
     typealias Element = O.E
     typealias Parent = CatchSequence<S>
-    
+
     private var _lastError: Swift.Error?
-    
+
     override init(observer: O, cancel: Cancelable) {
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<Element>) {
         switch event {
         case .next:
@@ -196,38 +194,36 @@ final fileprivate class CatchSequenceSink<S: Sequence, O: ObserverType>
     override func subscribeToNext(_ source: Observable<E>) -> Disposable {
         return source.subscribe(self)
     }
-    
+
     override func done() {
         if let lastError = _lastError {
             forwardOn(.error(lastError))
-        }
-        else {
+        } else {
             forwardOn(.completed)
         }
-        
+
         self.dispose()
     }
-    
+
     override func extract(_ observable: Observable<Element>) -> SequenceGenerator? {
         if let onError = observable as? CatchSequence<S> {
             return (onError.sources.makeIterator(), nil)
-        }
-        else {
+        } else {
             return nil
         }
     }
 }
 
-final fileprivate class CatchSequence<S: Sequence> : Producer<S.Iterator.Element.E> where S.Iterator.Element : ObservableConvertibleType {
+final private class CatchSequence<S: Sequence> : Producer<S.Iterator.Element.E> where S.Iterator.Element: ObservableConvertibleType {
     typealias Element = S.Iterator.Element.E
-    
+
     let sources: S
-    
+
     init(sources: S) {
         self.sources = sources
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = CatchSequenceSink<S, O>(observer: observer, cancel: cancel)
         let subscription = sink.run((self.sources.makeIterator(), nil))
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+Collection.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+Collection.swift
index 45e01737eebd0d5ecef9e96493ca3f91a61008d7..f063c6439b7c6ca350185819bb968617eadd5352 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+Collection.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+Collection.swift
@@ -33,14 +33,14 @@ extension ObservableType {
     }
 }
 
-final fileprivate class CombineLatestCollectionTypeSink<C: Collection, O: ObserverType>
-    : Sink<O> where C.Iterator.Element : ObservableConvertibleType {
+final private class CombineLatestCollectionTypeSink<C: Collection, O: ObserverType>
+    : Sink<O> where C.Iterator.Element: ObservableConvertibleType {
     typealias R = O.E
     typealias Parent = CombineLatestCollectionType<C, R>
     typealias SourceElement = C.Iterator.Element.E
-    
+
     let _parent: Parent
-    
+
     let _lock = RecursiveLock()
 
     // state
@@ -49,21 +49,21 @@ final fileprivate class CombineLatestCollectionTypeSink<C: Collection, O: Observ
     var _isDone: [Bool]
     var _numberOfDone = 0
     var _subscriptions: [SingleAssignmentDisposable]
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _values = [SourceElement?](repeating: nil, count: parent._count)
         _isDone = [Bool](repeating: false, count: parent._count)
         _subscriptions = Array<SingleAssignmentDisposable>()
         _subscriptions.reserveCapacity(parent._count)
-        
+
         for _ in 0 ..< parent._count {
             _subscriptions.append(SingleAssignmentDisposable())
         }
-        
+
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<SourceElement>, atIndex: Int) {
         _lock.lock(); defer { _lock.unlock() } // {
             switch event {
@@ -71,9 +71,9 @@ final fileprivate class CombineLatestCollectionTypeSink<C: Collection, O: Observ
                 if _values[atIndex] == nil {
                    _numberOfValues += 1
                 }
-                
+
                 _values[atIndex] = element
-                
+
                 if _numberOfValues < _parent._count {
                     let numberOfOthersThatAreDone = self._numberOfDone - (_isDone[atIndex] ? 1 : 0)
                     if numberOfOthersThatAreDone == self._parent._count - 1 {
@@ -82,16 +82,15 @@ final fileprivate class CombineLatestCollectionTypeSink<C: Collection, O: Observ
                     }
                     return
                 }
-                
+
                 do {
                     let result = try _parent._resultSelector(_values.map { $0! })
                     forwardOn(.next(result))
-                }
-                catch let error {
+                } catch let error {
                     forwardOn(.error(error))
                     dispose()
                 }
-                
+
             case .error(let error):
                 forwardOn(.error(error))
                 dispose()
@@ -99,21 +98,20 @@ final fileprivate class CombineLatestCollectionTypeSink<C: Collection, O: Observ
                 if _isDone[atIndex] {
                     return
                 }
-                
+
                 _isDone[atIndex] = true
                 _numberOfDone += 1
-                
+
                 if _numberOfDone == self._parent._count {
                     forwardOn(.completed)
                     dispose()
-                }
-                else {
+                } else {
                     _subscriptions[atIndex].dispose()
                 }
             }
         // }
     }
-    
+
     func run() -> Disposable {
         var j = 0
         for i in _parent._sources {
@@ -124,21 +122,21 @@ final fileprivate class CombineLatestCollectionTypeSink<C: Collection, O: Observ
             })
 
             _subscriptions[j].setDisposable(disposable)
-            
+
             j += 1
         }
 
         if _parent._sources.isEmpty {
             self.forwardOn(.completed)
         }
-        
+
         return Disposables.create(_subscriptions)
     }
 }
 
-final fileprivate class CombineLatestCollectionType<C: Collection, R> : Producer<R> where C.Iterator.Element : ObservableConvertibleType {
+final private class CombineLatestCollectionType<C: Collection, R> : Producer<R> where C.Iterator.Element: ObservableConvertibleType {
     typealias ResultSelector = ([C.Iterator.Element.E]) throws -> R
-    
+
     let _sources: C
     let _resultSelector: ResultSelector
     let _count: Int
@@ -148,8 +146,8 @@ final fileprivate class CombineLatestCollectionType<C: Collection, R> : Producer
         _resultSelector = resultSelector
         _count = Int(Int64(self._sources.count))
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R {
         let sink = CombineLatestCollectionTypeSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+arity.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+arity.swift
index aad22554874ca445d10d1325550f931da5e576fe..465a0b578c665e64cc161f983d1df5628e8ddead 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+arity.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+arity.swift
@@ -7,8 +7,6 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-
-
 // 2
 
 extension ObservableType {
@@ -105,8 +103,6 @@ final class CombineLatest2<E1, E2, R> : Producer<R> {
     }
 }
 
-
-
 // 3
 
 extension ObservableType {
@@ -210,8 +206,6 @@ final class CombineLatest3<E1, E2, E3, R> : Producer<R> {
     }
 }
 
-
-
 // 4
 
 extension ObservableType {
@@ -322,8 +316,6 @@ final class CombineLatest4<E1, E2, E3, E4, R> : Producer<R> {
     }
 }
 
-
-
 // 5
 
 extension ObservableType {
@@ -441,8 +433,6 @@ final class CombineLatest5<E1, E2, E3, E4, E5, R> : Producer<R> {
     }
 }
 
-
-
 // 6
 
 extension ObservableType {
@@ -567,8 +557,6 @@ final class CombineLatest6<E1, E2, E3, E4, E5, E6, R> : Producer<R> {
     }
 }
 
-
-
 // 7
 
 extension ObservableType {
@@ -700,8 +688,6 @@ final class CombineLatest7<E1, E2, E3, E4, E5, E6, E7, R> : Producer<R> {
     }
 }
 
-
-
 // 8
 
 extension ObservableType {
@@ -839,5 +825,3 @@ final class CombineLatest8<E1, E2, E3, E4, E5, E6, E7, E8, R> : Producer<R> {
         return (sink: sink, subscription: subscription)
     }
 }
-
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest.swift
index 8c03e8c38c2174fd47cc3b9a5ae0406512bff6a2..0d846b3d94505929e6003c3374206e8c5120ac3d 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest.swift
@@ -6,17 +6,16 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-protocol CombineLatestProtocol : class {
+protocol CombineLatestProtocol: class {
     func next(_ index: Int)
     func fail(_ error: Swift.Error)
     func done(_ index: Int)
 }
 
 class CombineLatestSink<O: ObserverType>
-    : Sink<O>
-    , CombineLatestProtocol {
+    : Sink<O>, CombineLatestProtocol {
     typealias Element = O.E
-   
+
     let _lock = RecursiveLock()
 
     private let _arity: Int
@@ -24,19 +23,19 @@ class CombineLatestSink<O: ObserverType>
     private var _numberOfDone = 0
     private var _hasValue: [Bool]
     private var _isDone: [Bool]
-   
+
     init(arity: Int, observer: O, cancel: Cancelable) {
         _arity = arity
         _hasValue = [Bool](repeating: false, count: arity)
         _isDone = [Bool](repeating: false, count: arity)
-        
+
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func getResult() throws -> Element {
         rxAbstractMethod()
     }
-    
+
     func next(_ index: Int) {
         if !_hasValue[index] {
             _hasValue[index] = true
@@ -47,13 +46,11 @@ class CombineLatestSink<O: ObserverType>
             do {
                 let result = try getResult()
                 forwardOn(.next(result))
-            }
-            catch let e {
+            } catch let e {
                 forwardOn(.error(e))
                 dispose()
             }
-        }
-        else {
+        } else {
             var allOthersDone = true
 
             for i in 0 ..< _arity {
@@ -62,19 +59,19 @@ class CombineLatestSink<O: ObserverType>
                     break
                 }
             }
-            
+
             if allOthersDone {
                 forwardOn(.completed)
                 dispose()
             }
         }
     }
-    
+
     func fail(_ error: Swift.Error) {
         forwardOn(.error(error))
         dispose()
     }
-    
+
     func done(_ index: Int) {
         if _isDone[index] {
             return
@@ -91,19 +88,17 @@ class CombineLatestSink<O: ObserverType>
 }
 
 final class CombineLatestObserver<ElementType>
-    : ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+    : ObserverType, LockOwnerType, SynchronizedOnType {
     typealias Element = ElementType
     typealias ValueSetter = (Element) -> Void
-    
+
     private let _parent: CombineLatestProtocol
-    
+
     let _lock: RecursiveLock
     private let _index: Int
     private let _this: Disposable
     private let _setLatestValue: ValueSetter
-    
+
     init(lock: RecursiveLock, parent: CombineLatestProtocol, index: Int, setLatestValue: @escaping ValueSetter, this: Disposable) {
         _lock = lock
         _parent = parent
@@ -111,7 +106,7 @@ final class CombineLatestObserver<ElementType>
         _this = this
         _setLatestValue = setLatestValue
     }
-    
+
     func on(_ event: Event<Element>) {
         synchronizedOn(event)
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Concat.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Concat.swift
index 35ef0e1f780546b0a90c3a6df71dbf1ebcda9489..24ce36840f460cfeba0cfa76f9c8c9628ac1c159 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Concat.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Concat.swift
@@ -76,16 +76,15 @@ extension ObservableType {
     }
 }
 
-final fileprivate class ConcatSink<S: Sequence, O: ObserverType>
-    : TailRecursiveSink<S, O>
-    , ObserverType where S.Iterator.Element : ObservableConvertibleType, S.Iterator.Element.E == O.E {
+final private class ConcatSink<S: Sequence, O: ObserverType>
+    : TailRecursiveSink<S, O>, ObserverType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E {
     typealias Element = O.E
-    
+
     override init(observer: O, cancel: Cancelable) {
         super.init(observer: observer, cancel: cancel)
     }
-    
-    func on(_ event: Event<Element>){
+
+    func on(_ event: Event<Element>) {
         switch event {
         case .next:
             forwardOn(event)
@@ -100,20 +99,19 @@ final fileprivate class ConcatSink<S: Sequence, O: ObserverType>
     override func subscribeToNext(_ source: Observable<E>) -> Disposable {
         return source.subscribe(self)
     }
-    
+
     override func extract(_ observable: Observable<E>) -> SequenceGenerator? {
         if let source = observable as? Concat<S> {
             return (source._sources.makeIterator(), source._count)
-        }
-        else {
+        } else {
             return nil
         }
     }
 }
 
-final fileprivate class Concat<S: Sequence> : Producer<S.Iterator.Element.E> where S.Iterator.Element : ObservableConvertibleType {
+final private class Concat<S: Sequence> : Producer<S.Iterator.Element.E> where S.Iterator.Element: ObservableConvertibleType {
     typealias Element = S.Iterator.Element.E
-    
+
     fileprivate let _sources: S
     fileprivate let _count: IntMax?
 
@@ -121,11 +119,10 @@ final fileprivate class Concat<S: Sequence> : Producer<S.Iterator.Element.E> whe
         _sources = sources
         _count = count
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = ConcatSink<S, O>(observer: observer, cancel: cancel)
         let subscription = sink.run((_sources.makeIterator(), _count))
         return (sink: sink, subscription: subscription)
     }
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Create.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Create.swift
index 507c8e6d9c8c2df6e66a41f5f1b609cc3c68817a..5a362145b8955af1439f5e269aa573fa34c2cb7a 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Create.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Create.swift
@@ -22,7 +22,7 @@ extension ObservableType {
     }
 }
 
-final fileprivate class AnonymousObservableSink<O: ObserverType> : Sink<O>, ObserverType {
+final private class AnonymousObservableSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias E = O.E
     typealias Parent = AnonymousObservable<E>
 
@@ -61,7 +61,7 @@ final fileprivate class AnonymousObservableSink<O: ObserverType> : Sink<O>, Obse
     }
 }
 
-final fileprivate class AnonymousObservable<Element> : Producer<Element> {
+final private class AnonymousObservable<Element> : Producer<Element> {
     typealias SubscribeHandler = (AnyObserver<Element>) -> Disposable
 
     let _subscribeHandler: SubscribeHandler
@@ -70,7 +70,7 @@ final fileprivate class AnonymousObservable<Element> : Producer<Element> {
         _subscribeHandler = subscribeHandler
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = AnonymousObservableSink(observer: observer, cancel: cancel)
         let subscription = sink.run(self)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debounce.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debounce.swift
index 866427a0d4f223faeadbce3553b756fd32aa6603..22931d09d58e2e58a4c5707b3322b95f388af092 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debounce.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debounce.swift
@@ -23,11 +23,8 @@ extension ObservableType {
     }
 }
 
-final fileprivate class DebounceSink<O: ObserverType>
-    : Sink<O>
-    , ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+final private class DebounceSink<O: ObserverType>
+    : Sink<O>, ObserverType, LockOwnerType, SynchronizedOnType {
     typealias Element = O.E
     typealias ParentType = Debounce<Element>
 
@@ -37,7 +34,7 @@ final fileprivate class DebounceSink<O: ObserverType>
 
     // state
     private var _id = 0 as UInt64
-    private var _value: Element? = nil
+    private var _value: Element?
 
     let cancellable = SerialDisposable()
 
@@ -64,7 +61,6 @@ final fileprivate class DebounceSink<O: ObserverType>
             let currentId = _id
             _value = element
 
-
             let scheduler = _parent._scheduler
             let dueTime = _parent._dueTime
 
@@ -98,7 +94,7 @@ final fileprivate class DebounceSink<O: ObserverType>
     }
 }
 
-final fileprivate class Debounce<Element> : Producer<Element> {
+final private class Debounce<Element> : Producer<Element> {
 
     fileprivate let _source: Observable<Element>
     fileprivate let _dueTime: RxTimeInterval
@@ -115,5 +111,5 @@ final fileprivate class Debounce<Element> : Producer<Element> {
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debug.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debug.swift
index 85b8af7575fa2a189132b3788a0bbd6b92cd71f9..8a1183a6310271039c613ab2bf3c2d93c19d2afc 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debug.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debug.swift
@@ -26,19 +26,19 @@ extension ObservableType {
     }
 }
 
-fileprivate let dateFormat = "yyyy-MM-dd HH:mm:ss.SSS"
+private let dateFormat = "yyyy-MM-dd HH:mm:ss.SSS"
 
-fileprivate func logEvent(_ identifier: String, dateFormat: DateFormatter, content: String) {
+private func logEvent(_ identifier: String, dateFormat: DateFormatter, content: String) {
     print("\(dateFormat.string(from: Date())): \(identifier) -> \(content)")
 }
 
-final fileprivate class DebugSink<Source: ObservableType, O: ObserverType> : Sink<O>, ObserverType where O.E == Source.E {
+final private class DebugSink<Source: ObservableType, O: ObserverType> : Sink<O>, ObserverType where O.E == Source.E {
     typealias Element = O.E
     typealias Parent = Debug<Source>
-    
+
     private let _parent: Parent
     private let _timestampFormatter = DateFormatter()
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _timestampFormatter.dateFormat = dateFormat
@@ -47,7 +47,7 @@ final fileprivate class DebugSink<Source: ObservableType, O: ObserverType> : Sin
 
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<Element>) {
         let maxEventTextLength = 40
         let eventText = "\(event)"
@@ -63,7 +63,7 @@ final fileprivate class DebugSink<Source: ObservableType, O: ObserverType> : Sin
             dispose()
         }
     }
-    
+
     override func dispose() {
         if !self.disposed {
             logEvent(_parent._identifier, dateFormat: _timestampFormatter, content: "isDisposed")
@@ -72,7 +72,7 @@ final fileprivate class DebugSink<Source: ObservableType, O: ObserverType> : Sin
     }
 }
 
-final fileprivate class Debug<Source: ObservableType> : Producer<Source.E> {
+final private class Debug<Source: ObservableType> : Producer<Source.E> {
     fileprivate let _identifier: String
     fileprivate let _trimOutput: Bool
     fileprivate let _source: Source
@@ -81,20 +81,18 @@ final fileprivate class Debug<Source: ObservableType> : Producer<Source.E> {
         _trimOutput = trimOutput
         if let identifier = identifier {
             _identifier = identifier
-        }
-        else {
+        } else {
             let trimmedFile: String
             if let lastIndex = file.lastIndexOf("/") {
                 trimmedFile = String(file[file.index(after: lastIndex) ..< file.endIndex])
-            }
-            else {
+            } else {
                 trimmedFile = file
             }
             _identifier = "\(trimmedFile):\(line) (\(function))"
         }
         _source = source
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Source.E {
         let sink = DebugSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DefaultIfEmpty.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DefaultIfEmpty.swift
index 696361fdd34b04d5244180840748ab18290cb55d..69d369a1d79a7361e9b2e710ef40f47cf25ea43c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DefaultIfEmpty.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DefaultIfEmpty.swift
@@ -21,22 +21,22 @@ extension ObservableType {
     }
 }
 
-final fileprivate class DefaultIfEmptySink<O: ObserverType>: Sink<O>, ObserverType {
+final private class DefaultIfEmptySink<O: ObserverType>: Sink<O>, ObserverType {
     typealias E = O.E
     private let _default: E
     private var _isEmpty = true
-    
+
     init(default: E, observer: O, cancel: Cancelable) {
         _default = `default`
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<E>) {
         switch event {
-        case .next(_):
+        case .next:
             _isEmpty = false
             forwardOn(event)
-        case .error(_):
+        case .error:
             forwardOn(event)
             dispose()
         case .completed:
@@ -49,15 +49,15 @@ final fileprivate class DefaultIfEmptySink<O: ObserverType>: Sink<O>, ObserverTy
     }
 }
 
-final fileprivate class DefaultIfEmpty<SourceType>: Producer<SourceType> {
+final private class DefaultIfEmpty<SourceType>: Producer<SourceType> {
     private let _source: Observable<SourceType>
     private let _default: SourceType
-    
+
     init(source: Observable<SourceType>, `default`: SourceType) {
         _source = source
         _default = `default`
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceType {
         let sink = DefaultIfEmptySink(default: _default, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Deferred.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Deferred.swift
index 947f604a5cc127782e147200486fed725b50911f..df0cbbdcd9949d159010114e5e21f4ae08823094 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Deferred.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Deferred.swift
@@ -21,7 +21,7 @@ extension ObservableType {
     }
 }
 
-final fileprivate class DeferredSink<S: ObservableType, O: ObserverType> : Sink<O>, ObserverType where S.E == O.E {
+final private class DeferredSink<S: ObservableType, O: ObserverType> : Sink<O>, ObserverType where S.E == O.E {
     typealias E = O.E
 
     private let _observableFactory: () throws -> S
@@ -30,22 +30,21 @@ final fileprivate class DeferredSink<S: ObservableType, O: ObserverType> : Sink<
         _observableFactory = observableFactory
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         do {
             let result = try _observableFactory()
             return result.subscribe(self)
-        }
-        catch let e {
+        } catch let e {
             forwardOn(.error(e))
             dispose()
             return Disposables.create()
         }
     }
-    
+
     func on(_ event: Event<E>) {
         forwardOn(event)
-        
+
         switch event {
         case .next:
             break
@@ -57,15 +56,15 @@ final fileprivate class DeferredSink<S: ObservableType, O: ObserverType> : Sink<
     }
 }
 
-final fileprivate class Deferred<S: ObservableType> : Producer<S.E> {
+final private class Deferred<S: ObservableType> : Producer<S.E> {
     typealias Factory = () throws -> S
-    
-    private let _observableFactory : Factory
-    
+
+    private let _observableFactory: Factory
+
     init(observableFactory: @escaping Factory) {
         _observableFactory = observableFactory
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == S.E {
         let sink = DeferredSink(observableFactory: _observableFactory, observer: observer, cancel: cancel)
         let subscription = sink.run()
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Delay.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Delay.swift
index 13955a3524335cc86932e8d579ce0d0fe29f32df..0b35a626e579e9aad6406bcfd4b208e356eff2e3 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Delay.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Delay.swift
@@ -25,18 +25,17 @@ extension ObservableType {
     }
 }
 
-final fileprivate class DelaySink<O: ObserverType>
-    : Sink<O>
-    , ObserverType {
+final private class DelaySink<O: ObserverType>
+    : Sink<O>, ObserverType {
     typealias E = O.E
     typealias Source = Observable<E>
     typealias DisposeKey = Bag<Disposable>.KeyType
-    
+
     private let _lock = RecursiveLock()
 
     private let _dueTime: RxTimeInterval
     private let _scheduler: SchedulerType
-    
+
     private let _sourceSubscription = SingleAssignmentDisposable()
     private let _cancelable = SerialDisposable()
 
@@ -44,12 +43,12 @@ final fileprivate class DelaySink<O: ObserverType>
     private var _active = false
     // is "run loop" on different scheduler running
     private var _running = false
-    private var _errorEvent: Event<E>? = nil
+    private var _errorEvent: Event<E>?
 
     // state
     private var _queue = Queue<(eventTime: RxTime, event: Event<E>)>(capacity: 0)
     private var _disposed = false
-    
+
     init(observer: O, dueTime: RxTimeInterval, scheduler: SchedulerType, cancel: Cancelable) {
         _dueTime = dueTime
         _scheduler = scheduler
@@ -84,14 +83,11 @@ final fileprivate class DelaySink<O: ObserverType>
                 let nextEventToScheduleOriginalTime: Date? = ranAtLeastOnce && !_queue.isEmpty ? _queue.peek().eventTime : nil
 
                 if let _ = errorEvent {
-                }
-                else  {
+                } else {
                     if let _ = eventToForwardImmediately {
-                    }
-                    else if let _ = nextEventToScheduleOriginalTime {
+                    } else if let _ = nextEventToScheduleOriginalTime {
                         _running = false
-                    }
-                    else {
+                    } else {
                         _running = false
                         _active = false
                     }
@@ -102,8 +98,7 @@ final fileprivate class DelaySink<O: ObserverType>
                 self.forwardOn(errorEvent)
                 self.dispose()
                 return
-            }
-            else {
+            } else {
                 if let eventToForwardImmediately = eventToForwardImmediately {
                     ranAtLeastOnce = true
                     self.forwardOn(eventToForwardImmediately)
@@ -111,28 +106,26 @@ final fileprivate class DelaySink<O: ObserverType>
                         self.dispose()
                         return
                     }
-                }
-                else if let nextEventToScheduleOriginalTime = nextEventToScheduleOriginalTime {
+                } else if let nextEventToScheduleOriginalTime = nextEventToScheduleOriginalTime {
                     let elapsedTime = _scheduler.now.timeIntervalSince(nextEventToScheduleOriginalTime)
                     let interval = _dueTime - elapsedTime
                     let normalizedInterval = interval < 0.0 ? 0.0 : interval
                     scheduler.schedule((), dueTime: normalizedInterval)
                     return
-                }
-                else {
+                } else {
                     return
                 }
             }
         }
     }
-    
+
     func on(_ event: Event<E>) {
         if event.isStopEvent {
             _sourceSubscription.dispose()
         }
 
         switch event {
-        case .error(_):
+        case .error:
             _lock.lock()    // {
                 let shouldSendImmediately = !_running
                 _queue = Queue(capacity: 0)
@@ -155,25 +148,25 @@ final fileprivate class DelaySink<O: ObserverType>
             }
         }
     }
-    
+
     func run(source: Observable<E>) -> Disposable {
         _sourceSubscription.setDisposable(source.subscribe(self))
         return Disposables.create(_sourceSubscription, _cancelable)
     }
 }
 
-final fileprivate class Delay<Element>: Producer<Element> {
+final private class Delay<Element>: Producer<Element> {
     private let _source: Observable<Element>
     private let _dueTime: RxTimeInterval
     private let _scheduler: SchedulerType
-    
+
     init(source: Observable<Element>, dueTime: RxTimeInterval, scheduler: SchedulerType) {
         _source = source
         _dueTime = dueTime
         _scheduler = scheduler
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = DelaySink(observer: observer, dueTime: _dueTime, scheduler: _scheduler, cancel: cancel)
         let subscription = sink.run(source: _source)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DelaySubscription.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DelaySubscription.swift
index 9225a196c76e55387a8a237a643108f2f19bac7a..253808bc018d419d8cb8ae23343e207a8c840249 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DelaySubscription.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DelaySubscription.swift
@@ -23,39 +23,39 @@ extension ObservableType {
     }
 }
 
-final fileprivate class DelaySubscriptionSink<O: ObserverType>
+final private class DelaySubscriptionSink<O: ObserverType>
     : Sink<O>, ObserverType {
     typealias E = O.E
     typealias Parent = DelaySubscription<E>
-    
+
     private let _parent: Parent
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<E>) {
         forwardOn(event)
         if event.isStopEvent {
             dispose()
         }
     }
-    
+
 }
 
-final fileprivate class DelaySubscription<Element>: Producer<Element> {
+final private class DelaySubscription<Element>: Producer<Element> {
     private let _source: Observable<Element>
     private let _dueTime: RxTimeInterval
     private let _scheduler: SchedulerType
-    
+
     init(source: Observable<Element>, dueTime: RxTimeInterval, scheduler: SchedulerType) {
         _source = source
         _dueTime = dueTime
         _scheduler = scheduler
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = DelaySubscriptionSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _scheduler.scheduleRelative((), dueTime: _dueTime) { _ in
             return self._source.subscribe(sink)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Dematerialize.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Dematerialize.swift
index d142249a9610b3d9a602d92b4ff7eaf437a9d6ae..9c5ea9a6c64948ee0cb16d3b6a78964171fe7747 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Dematerialize.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Dematerialize.swift
@@ -36,14 +36,14 @@ fileprivate final class DematerializeSink<Element: EventConvertible, O: Observer
     }
 }
 
-final fileprivate class Dematerialize<Element: EventConvertible>: Producer<Element.ElementType>  {
+final private class Dematerialize<Element: EventConvertible>: Producer<Element.ElementType> {
     private let _source: Observable<Element>
-    
+
     init(source: Observable<Element>) {
         _source = source
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element.ElementType {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element.ElementType {
         let sink = DematerializeSink<Element, O>(observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DistinctUntilChanged.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DistinctUntilChanged.swift
index f72f52014da962ef258d9bcae576567d1da33af4..e1aef7c33e524f9b11ce38829204b85c2613cf83 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DistinctUntilChanged.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DistinctUntilChanged.swift
@@ -63,17 +63,17 @@ extension ObservableType {
     }
 }
 
-final fileprivate class DistinctUntilChangedSink<O: ObserverType, Key>: Sink<O>, ObserverType {
+final private class DistinctUntilChangedSink<O: ObserverType, Key>: Sink<O>, ObserverType {
     typealias E = O.E
-    
+
     private let _parent: DistinctUntilChanged<E, Key>
-    private var _currentKey: Key? = nil
-    
+    private var _currentKey: Key?
+
     init(parent: DistinctUntilChanged<E, Key>, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<E>) {
         switch event {
         case .next(let value):
@@ -83,16 +83,15 @@ final fileprivate class DistinctUntilChangedSink<O: ObserverType, Key>: Sink<O>,
                 if let currentKey = _currentKey {
                     areEqual = try _parent._comparer(currentKey, key)
                 }
-                
+
                 if areEqual {
                     return
                 }
-                
+
                 _currentKey = key
-                
+
                 forwardOn(event)
-            }
-            catch let error {
+            } catch let error {
                 forwardOn(.error(error))
                 dispose()
             }
@@ -103,20 +102,20 @@ final fileprivate class DistinctUntilChangedSink<O: ObserverType, Key>: Sink<O>,
     }
 }
 
-final fileprivate class DistinctUntilChanged<Element, Key>: Producer<Element> {
+final private class DistinctUntilChanged<Element, Key>: Producer<Element> {
     typealias KeySelector = (Element) throws -> Key
     typealias EqualityComparer = (Key, Key) throws -> Bool
-    
+
     fileprivate let _source: Observable<Element>
     fileprivate let _selector: KeySelector
     fileprivate let _comparer: EqualityComparer
-    
+
     init(source: Observable<Element>, selector: @escaping KeySelector, comparer: @escaping EqualityComparer) {
         _source = source
         _selector = selector
         _comparer = comparer
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = DistinctUntilChangedSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Do.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Do.swift
index 2be6d58328db9a93ac45597abf3250174eb73e93..22ef161a78c6ed000db5dcf12fd774edc5464340 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Do.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Do.swift
@@ -20,7 +20,7 @@ extension ObservableType {
      - parameter onDispose: Action to invoke after subscription to source observable has been disposed for any reason. It can be either because sequence terminates for some reason or observer subscription being disposed.
      - returns: The source sequence with the side-effecting behavior applied.
      */
-    public func `do`(onNext: ((E) throws -> Void)? = nil, onError: ((Swift.Error) throws -> Void)? = nil, onCompleted: (() throws -> Void)? = nil, onSubscribe: (() -> ())? = nil, onSubscribed: (() -> ())? = nil, onDispose: (() -> ())? = nil)
+    public func `do`(onNext: ((E) throws -> Void)? = nil, onError: ((Swift.Error) throws -> Void)? = nil, onCompleted: (() throws -> Void)? = nil, onSubscribe: (() -> Void)? = nil, onSubscribed: (() -> Void)? = nil, onDispose: (() -> Void)? = nil)
         -> Observable<E> {
             return Do(source: self.asObservable(), eventHandler: { e in
                 switch e {
@@ -35,17 +35,17 @@ extension ObservableType {
     }
 }
 
-final fileprivate class DoSink<O: ObserverType> : Sink<O>, ObserverType {
+final private class DoSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias Element = O.E
     typealias EventHandler = (Event<Element>) throws -> Void
-    
+
     private let _eventHandler: EventHandler
-    
+
     init(eventHandler: @escaping EventHandler, observer: O, cancel: Cancelable) {
         _eventHandler = eventHandler
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<Element>) {
         do {
             try _eventHandler(event)
@@ -53,31 +53,30 @@ final fileprivate class DoSink<O: ObserverType> : Sink<O>, ObserverType {
             if event.isStopEvent {
                 dispose()
             }
-        }
-        catch let error {
+        } catch let error {
             forwardOn(.error(error))
             dispose()
         }
     }
 }
 
-final fileprivate class Do<Element> : Producer<Element> {
+final private class Do<Element> : Producer<Element> {
     typealias EventHandler = (Event<Element>) throws -> Void
-    
+
     fileprivate let _source: Observable<Element>
     fileprivate let _eventHandler: EventHandler
-    fileprivate let _onSubscribe: (() -> ())?
-    fileprivate let _onSubscribed: (() -> ())?
-    fileprivate let _onDispose: (() -> ())?
-    
-    init(source: Observable<Element>, eventHandler: @escaping EventHandler, onSubscribe: (() -> ())?, onSubscribed: (() -> ())?, onDispose: (() -> ())?) {
+    fileprivate let _onSubscribe: (() -> Void)?
+    fileprivate let _onSubscribed: (() -> Void)?
+    fileprivate let _onDispose: (() -> Void)?
+
+    init(source: Observable<Element>, eventHandler: @escaping EventHandler, onSubscribe: (() -> Void)?, onSubscribed: (() -> Void)?, onDispose: (() -> Void)?) {
         _source = source
         _eventHandler = eventHandler
         _onSubscribe = onSubscribe
         _onSubscribed = onSubscribed
         _onDispose = onDispose
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         _onSubscribe?()
         let sink = DoSink(eventHandler: _eventHandler, observer: observer, cancel: cancel)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ElementAt.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ElementAt.swift
index 500a0442e47399ea36420d0cd9d2e8b13ff35007..a8609a9c6889d3009e9a26401e009052bde133cb 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ElementAt.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ElementAt.swift
@@ -22,38 +22,38 @@ extension ObservableType {
     }
 }
 
-final fileprivate class ElementAtSink<O: ObserverType> : Sink<O>, ObserverType {
+final private class ElementAtSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias SourceType = O.E
     typealias Parent = ElementAt<SourceType>
-    
+
     let _parent: Parent
     var _i: Int
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _i = parent._index
-        
+
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<SourceType>) {
         switch event {
-        case .next(_):
+        case .next:
 
             if (_i == 0) {
                 forwardOn(event)
                 forwardOn(.completed)
                 self.dispose()
             }
-            
+
             do {
-                let _ = try decrementChecked(&_i)
+                _ = try decrementChecked(&_i)
             } catch(let e) {
                 forwardOn(.error(e))
                 dispose()
                 return
             }
-            
+
         case .error(let e):
             forwardOn(.error(e))
             self.dispose()
@@ -63,18 +63,18 @@ final fileprivate class ElementAtSink<O: ObserverType> : Sink<O>, ObserverType {
             } else {
                 forwardOn(.completed)
             }
-            
+
             self.dispose()
         }
     }
 }
 
-final fileprivate class ElementAt<SourceType> : Producer<SourceType> {
-    
+final private class ElementAt<SourceType> : Producer<SourceType> {
+
     let _source: Observable<SourceType>
     let _throwOnEmpty: Bool
     let _index: Int
-    
+
     init(source: Observable<SourceType>, index: Int, throwOnEmpty: Bool) {
         if index < 0 {
             rxFatalError("index can't be negative")
@@ -84,7 +84,7 @@ final fileprivate class ElementAt<SourceType> : Producer<SourceType> {
         self._index = index
         self._throwOnEmpty = throwOnEmpty
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceType {
         let sink = ElementAtSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Empty.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Empty.swift
index d2dcdb00967d25acab9fcb0a758d365dbf1b51ff..abaeab1b8be409edc6279825daa0c43cb2eb1d9d 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Empty.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Empty.swift
@@ -19,8 +19,8 @@ extension ObservableType {
     }
 }
 
-final fileprivate class EmptyProducer<Element> : Producer<Element> {
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+final private class EmptyProducer<Element> : Producer<Element> {
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         observer.on(.completed)
         return Disposables.create()
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Enumerated.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Enumerated.swift
index 2a6cd98084e8563ea9fea296512285a48e0b39c9..c86560e51f9489b49d170ab0d440f3fbc03d1f7b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Enumerated.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Enumerated.swift
@@ -21,10 +21,10 @@ extension ObservableType {
     }
 }
 
-final fileprivate class EnumeratedSink<Element, O : ObserverType>: Sink<O>, ObserverType where O.E == (index: Int, element: Element) {
+final private class EnumeratedSink<Element, O: ObserverType>: Sink<O>, ObserverType where O.E == (index: Int, element: Element) {
     typealias E = Element
     var index = 0
-    
+
     func on(_ event: Event<Element>) {
         switch event {
         case .next(let value):
@@ -32,8 +32,7 @@ final fileprivate class EnumeratedSink<Element, O : ObserverType>: Sink<O>, Obse
                 let nextIndex = try incrementChecked(&index)
                 let next = (index: nextIndex, element: value)
                 forwardOn(.next(next))
-            }
-            catch let e {
+            } catch let e {
                 forwardOn(.error(e))
                 dispose()
             }
@@ -47,7 +46,7 @@ final fileprivate class EnumeratedSink<Element, O : ObserverType>: Sink<O>, Obse
     }
 }
 
-final fileprivate class Enumerated<Element> : Producer<(index: Int, element: Element)> {
+final private class Enumerated<Element> : Producer<(index: Int, element: Element)> {
     private let _source: Observable<Element>
 
     init(source: Observable<Element>) {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Error.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Error.swift
index a15942bb51ee742ddf0aea894c5bc1b7753e4f42..2e7be595f8a8fe9ad28c2d0f4752d30dbf6904ba 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Error.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Error.swift
@@ -19,14 +19,14 @@ extension ObservableType {
     }
 }
 
-final fileprivate class ErrorProducer<Element> : Producer<Element> {
+final private class ErrorProducer<Element> : Producer<Element> {
     private let _error: Swift.Error
-    
+
     init(error: Swift.Error) {
         _error = error
     }
-    
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         observer.on(.error(_error))
         return Disposables.create()
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Filter.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Filter.swift
index 05dc8a4b7ff90a68a79347d4f69a705118ab8c2e..45113c9b72fd499ab9a9667ff04bcc1d57e489a6 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Filter.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Filter.swift
@@ -40,17 +40,17 @@ extension ObservableType {
     }
 }
 
-final fileprivate class FilterSink<O : ObserverType>: Sink<O>, ObserverType {
+final private class FilterSink<O: ObserverType>: Sink<O>, ObserverType {
     typealias Predicate = (Element) throws -> Bool
     typealias Element = O.E
-    
+
     private let _predicate: Predicate
-    
+
     init(predicate: @escaping Predicate, observer: O, cancel: Cancelable) {
         _predicate = predicate
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<Element>) {
         switch event {
             case .next(let value):
@@ -59,8 +59,7 @@ final fileprivate class FilterSink<O : ObserverType>: Sink<O>, ObserverType {
                     if satisfies {
                         forwardOn(.next(value))
                     }
-                }
-                catch let e {
+                } catch let e {
                     forwardOn(.error(e))
                     dispose()
                 }
@@ -71,17 +70,17 @@ final fileprivate class FilterSink<O : ObserverType>: Sink<O>, ObserverType {
     }
 }
 
-final fileprivate class Filter<Element> : Producer<Element> {
+final private class Filter<Element> : Producer<Element> {
     typealias Predicate = (Element) throws -> Bool
-    
+
     private let _source: Observable<Element>
     private let _predicate: Predicate
-    
+
     init(source: Observable<Element>, predicate: @escaping Predicate) {
         _source = source
         _predicate = predicate
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = FilterSink(predicate: _predicate, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/First.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/First.swift
index 4a72ba0d14ca8e950d446e323a75aca094e141c9..2dbdc79597e153bae7497ca8cfa6cfe249e93264 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/First.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/First.swift
@@ -34,7 +34,7 @@ final class First<Element>: Producer<Element?> {
         _source = source
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element? {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element? {
         let sink = FirstSink(observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Generate.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Generate.swift
index 6469937dbdb23de987960b534bb9b32be56d0d15..4c1d48274e5425d19ae9837a5522b4ab0d41f14b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Generate.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Generate.swift
@@ -24,38 +24,36 @@ extension ObservableType {
     }
 }
 
-final fileprivate class GenerateSink<S, O: ObserverType> : Sink<O> {
+final private class GenerateSink<S, O: ObserverType> : Sink<O> {
     typealias Parent = Generate<S, O.E>
-    
+
     private let _parent: Parent
-    
+
     private var _state: S
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _state = parent._initialState
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         return _parent._scheduler.scheduleRecursive(true) { (isFirst, recurse) -> Void in
             do {
                 if !isFirst {
                     self._state = try self._parent._iterate(self._state)
                 }
-                
+
                 if try self._parent._condition(self._state) {
                     let result = try self._parent._resultSelector(self._state)
                     self.forwardOn(.next(result))
-                    
+
                     recurse(false)
-                }
-                else {
+                } else {
                     self.forwardOn(.completed)
                     self.dispose()
                 }
-            }
-            catch let error {
+            } catch let error {
                 self.forwardOn(.error(error))
                 self.dispose()
             }
@@ -63,13 +61,13 @@ final fileprivate class GenerateSink<S, O: ObserverType> : Sink<O> {
     }
 }
 
-final fileprivate class Generate<S, E> : Producer<E> {
+final private class Generate<S, E> : Producer<E> {
     fileprivate let _initialState: S
     fileprivate let _condition: (S) throws -> Bool
     fileprivate let _iterate: (S) throws -> S
     fileprivate let _resultSelector: (S) throws -> E
     fileprivate let _scheduler: ImmediateSchedulerType
-    
+
     init(initialState: S, condition: @escaping (S) throws -> Bool, iterate: @escaping (S) throws -> S, resultSelector: @escaping (S) throws -> E, scheduler: ImmediateSchedulerType) {
         _initialState = initialState
         _condition = condition
@@ -78,8 +76,8 @@ final fileprivate class Generate<S, E> : Producer<E> {
         _scheduler = scheduler
         super.init()
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
         let sink = GenerateSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/GroupBy.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/GroupBy.swift
index a8a0e78afd08c0cf535c1ade53cff6e9866e70de..6ce5fd8301775521854f2f8c28bc8704e502626c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/GroupBy.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/GroupBy.swift
@@ -16,15 +16,15 @@ extension ObservableType {
      - returns: A sequence of observable groups, each of which corresponds to a unique key value, containing all elements that share that same key value.
      */
     public func groupBy<K: Hashable>(keySelector: @escaping (E) throws -> K)
-        -> Observable<GroupedObservable<K,E>> {
+        -> Observable<GroupedObservable<K, E>> {
         return GroupBy(source: self.asObservable(), selector: keySelector)
     }
 }
 
-final fileprivate class GroupedObservableImpl<Key, Element> : Observable<Element> {
+final private class GroupedObservableImpl<Key, Element> : Observable<Element> {
     private var _subject: PublishSubject<Element>
     private var _refCount: RefCountDisposable
-    
+
     init(key: Key, subject: PublishSubject<Element>, refCount: RefCountDisposable) {
         _subject = subject
         _refCount = refCount
@@ -37,10 +37,8 @@ final fileprivate class GroupedObservableImpl<Key, Element> : Observable<Element
     }
 }
 
-
-final fileprivate class GroupBySink<Key: Hashable, Element, O: ObserverType>
-    : Sink<O>
-    , ObserverType where O.E == GroupedObservable<Key, Element> {
+final private class GroupBySink<Key: Hashable, Element, O: ObserverType>
+    : Sink<O>, ObserverType where O.E == GroupedObservable<Key, Element> {
     typealias E = Element
     typealias ResultType = O.E
     typealias Parent = GroupBy<Key, Element>
@@ -49,33 +47,33 @@ final fileprivate class GroupBySink<Key: Hashable, Element, O: ObserverType>
     private let _subscription = SingleAssignmentDisposable()
     private var _refCountDisposable: RefCountDisposable!
     private var _groupedSubjectTable: [Key: PublishSubject<Element>]
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _groupedSubjectTable = [Key: PublishSubject<Element>]()
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         _refCountDisposable = RefCountDisposable(disposable: _subscription)
-        
+
         _subscription.setDisposable(_parent._source.subscribe(self))
-        
+
         return _refCountDisposable
     }
-    
+
     private func onGroupEvent(key: Key, value: Element) {
         if let writer = _groupedSubjectTable[key] {
             writer.on(.next(value))
         } else {
             let writer = PublishSubject<Element>()
             _groupedSubjectTable[key] = writer
-            
+
             let group = GroupedObservable(
                 key: key,
                 source: GroupedObservableImpl(key: key, subject: writer, refCount: _refCountDisposable)
             )
-            
+
             forwardOn(.next(group))
             writer.on(.next(value))
         }
@@ -87,8 +85,7 @@ final fileprivate class GroupBySink<Key: Hashable, Element, O: ObserverType>
             do {
                 let groupKey = try _parent._selector(value)
                 onGroupEvent(key: groupKey, value: value)
-            }
-            catch let e {
+            } catch let e {
                 error(e)
                 return
             }
@@ -108,7 +105,7 @@ final fileprivate class GroupBySink<Key: Hashable, Element, O: ObserverType>
         _subscription.dispose()
         dispose()
     }
-    
+
     final func forwardOnGroups(event: Event<Element>) {
         for writer in _groupedSubjectTable.values {
             writer.on(event)
@@ -116,18 +113,18 @@ final fileprivate class GroupBySink<Key: Hashable, Element, O: ObserverType>
     }
 }
 
-final fileprivate class GroupBy<Key: Hashable, Element>: Producer<GroupedObservable<Key,Element>> {
+final private class GroupBy<Key: Hashable, Element>: Producer<GroupedObservable<Key, Element>> {
     typealias KeySelector = (Element) throws -> Key
 
     fileprivate let _source: Observable<Element>
     fileprivate let _selector: KeySelector
-    
+
     init(source: Observable<Element>, selector: @escaping KeySelector) {
         _source = source
         _selector = selector
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == GroupedObservable<Key,Element> {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == GroupedObservable<Key, Element> {
         let sink = GroupBySink(parent: self, observer: observer, cancel: cancel)
         return (sink: sink, subscription: sink.run())
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Just.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Just.swift
index 4e49059bc695fcd85e890800fbc31b5f4f641138..466de2bd047153af00f657ecc5b936c9757dc275 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Just.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Just.swift
@@ -33,7 +33,7 @@ extension ObservableType {
     }
 }
 
-final fileprivate class JustScheduledSink<O: ObserverType> : Sink<O> {
+final private class JustScheduledSink<O: ObserverType> : Sink<O> {
     typealias Parent = JustScheduled<O.E>
 
     private let _parent: Parent
@@ -56,7 +56,7 @@ final fileprivate class JustScheduledSink<O: ObserverType> : Sink<O> {
     }
 }
 
-final fileprivate class JustScheduled<Element> : Producer<Element> {
+final private class JustScheduled<Element> : Producer<Element> {
     fileprivate let _scheduler: ImmediateSchedulerType
     fileprivate let _element: Element
 
@@ -65,21 +65,21 @@ final fileprivate class JustScheduled<Element> : Producer<Element> {
         _element = element
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
         let sink = JustScheduledSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
     }
 }
 
-final fileprivate class Just<Element> : Producer<Element> {
+final private class Just<Element> : Producer<Element> {
     private let _element: Element
-    
+
     init(element: Element) {
         _element = element
     }
-    
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         observer.on(.next(_element))
         observer.on(.completed)
         return Disposables.create()
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Map.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Map.swift
index c513218f66ae97824aaef6a1486a2610bc916d11..fd7f2668609b7d81000fa57048df4b42be0253d7 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Map.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Map.swift
@@ -23,14 +23,14 @@ extension ObservableType {
     }
 }
 
-final fileprivate class MapSink<SourceType, O : ObserverType> : Sink<O>, ObserverType {
+final private class MapSink<SourceType, O: ObserverType> : Sink<O>, ObserverType {
     typealias Transform = (SourceType) throws -> ResultType
 
     typealias ResultType = O.E
     typealias Element = SourceType
 
     private let _transform: Transform
-    
+
     init(transform: @escaping Transform, observer: O, cancel: Cancelable) {
         _transform = transform
         super.init(observer: observer, cancel: cancel)
@@ -42,8 +42,7 @@ final fileprivate class MapSink<SourceType, O : ObserverType> : Sink<O>, Observe
             do {
                 let mappedElement = try _transform(element)
                 forwardOn(.next(mappedElement))
-            }
-            catch let e {
+            } catch let e {
                 forwardOn(.error(e))
                 dispose()
             }
@@ -58,7 +57,7 @@ final fileprivate class MapSink<SourceType, O : ObserverType> : Sink<O>, Observe
 }
 
 #if TRACE_RESOURCES
-    fileprivate var _numberOfMapOperators = AtomicInt(0)
+    private var _numberOfMapOperators = AtomicInt(0)
     extension Resources {
         public static var numberOfMapOperators: Int32 {
             return _numberOfMapOperators.load()
@@ -70,7 +69,7 @@ internal func _map<Element, R>(source: Observable<Element>, transform: @escaping
     return Map(source: source, transform: transform)
 }
 
-final fileprivate class Map<SourceType, ResultType>: Producer<ResultType> {
+final private class Map<SourceType, ResultType>: Producer<ResultType> {
     typealias Transform = (SourceType) throws -> ResultType
 
     private let _source: Observable<SourceType>
@@ -82,7 +81,7 @@ final fileprivate class Map<SourceType, ResultType>: Producer<ResultType> {
         _transform = transform
 
 #if TRACE_RESOURCES
-        let _ = _numberOfMapOperators.increment()
+        _ = _numberOfMapOperators.increment()
 #endif
     }
 
@@ -93,7 +92,7 @@ final fileprivate class Map<SourceType, ResultType>: Producer<ResultType> {
             return try selector(r)
         })
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == ResultType {
         let sink = MapSink(transform: _transform, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
@@ -102,7 +101,7 @@ final fileprivate class Map<SourceType, ResultType>: Producer<ResultType> {
 
     #if TRACE_RESOURCES
     deinit {
-        let _ = _numberOfMapOperators.decrement()
+        _ = _numberOfMapOperators.decrement()
     }
     #endif
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Materialize.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Materialize.swift
index cf19b6da9b4a90e6d5973c7cfbff3724753b83a6..18e549d9791b5b6491393c8f44505d0d380eb148 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Materialize.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Materialize.swift
@@ -18,7 +18,7 @@ extension ObservableType {
 }
 
 fileprivate final class MaterializeSink<Element, O: ObserverType>: Sink<O>, ObserverType where O.E == Event<Element> {
-    
+
     func on(_ event: Event<Element>) {
         forwardOn(.next(event))
         if event.isStopEvent {
@@ -28,9 +28,9 @@ fileprivate final class MaterializeSink<Element, O: ObserverType>: Sink<O>, Obse
     }
 }
 
-final fileprivate class Materialize<Element>: Producer<Event<Element>> {
+final private class Materialize<Element>: Producer<Event<Element>> {
     private let _source: Observable<Element>
-    
+
     init(source: Observable<Element>) {
         _source = source
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Merge.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Merge.swift
index b2f9a0d9fcab2fcae507ae31dff3a9c2053cb009..3790efd64764d6d3436e1c60b1904534e87f77aa 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Merge.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Merge.swift
@@ -40,7 +40,7 @@ extension ObservableType {
     }
 }
 
-extension ObservableType where E : ObservableConvertibleType {
+extension ObservableType where E: ObservableConvertibleType {
 
     /**
      Merges elements from all observable sequences in the given enumerable sequence into a single observable sequence.
@@ -67,7 +67,7 @@ extension ObservableType where E : ObservableConvertibleType {
     }
 }
 
-extension ObservableType where E : ObservableConvertibleType {
+extension ObservableType where E: ObservableConvertibleType {
 
     /**
      Concatenates all inner observable sequences, as long as the previous observable sequence terminated successfully.
@@ -129,7 +129,7 @@ extension ObservableType {
      
      - returns: An observable sequence that contains the elements of each observed inner sequence, in sequential order.
      */
-    
+
     public func concatMap<O: ObservableConvertibleType>(_ selector: @escaping (E) throws -> O)
         -> Observable<O.E> {
             return ConcatMap(source: asObservable(), selector: selector)
@@ -137,25 +137,23 @@ extension ObservableType {
 }
 
 fileprivate final class MergeLimitedSinkIter<SourceElement, SourceSequence: ObservableConvertibleType, Observer: ObserverType>
-    : ObserverType
-    , LockOwnerType
-    , SynchronizedOnType where SourceSequence.E == Observer.E {
+    : ObserverType, LockOwnerType, SynchronizedOnType where SourceSequence.E == Observer.E {
     typealias E = Observer.E
     typealias DisposeKey = CompositeDisposable.DisposeKey
     typealias Parent = MergeLimitedSink<SourceElement, SourceSequence, Observer>
-    
+
     private let _parent: Parent
     private let _disposeKey: DisposeKey
 
     var _lock: RecursiveLock {
         return _parent._lock
     }
-    
+
     init(parent: Parent, disposeKey: DisposeKey) {
         _parent = parent
         _disposeKey = disposeKey
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -171,10 +169,9 @@ fileprivate final class MergeLimitedSinkIter<SourceElement, SourceSequence: Obse
             _parent._group.remove(for: _disposeKey)
             if let next = _parent._queue.dequeue() {
                 _parent.subscribe(next, group: _parent._group)
-            }
-            else {
+            } else {
                 _parent._activeCount = _parent._activeCount - 1
-                
+
                 if _parent._stopped && _parent._activeCount == 0 {
                     _parent.forwardOn(.completed)
                     _parent.dispose()
@@ -186,29 +183,28 @@ fileprivate final class MergeLimitedSinkIter<SourceElement, SourceSequence: Obse
 
 fileprivate final class ConcatMapSink<SourceElement, SourceSequence: ObservableConvertibleType, Observer: ObserverType>: MergeLimitedSink<SourceElement, SourceSequence, Observer> where Observer.E == SourceSequence.E {
     typealias Selector = (SourceElement) throws -> SourceSequence
-    
+
     private let _selector: Selector
-    
+
     init(selector: @escaping Selector, observer: Observer, cancel: Cancelable) {
         _selector = selector
         super.init(maxConcurrent: 1, observer: observer, cancel: cancel)
     }
-    
+
     override func performMap(_ element: SourceElement) throws -> SourceSequence {
         return try _selector(element)
     }
 }
 
 fileprivate final class MergeLimitedBasicSink<SourceSequence: ObservableConvertibleType, Observer: ObserverType>: MergeLimitedSink<SourceSequence, SourceSequence, Observer> where Observer.E == SourceSequence.E {
-    
+
     override func performMap(_ element: SourceSequence) throws -> SourceSequence {
         return element
     }
 }
 
-fileprivate class MergeLimitedSink<SourceElement, SourceSequence: ObservableConvertibleType, Observer: ObserverType>
-    : Sink<Observer>
-    , ObserverType where Observer.E == SourceSequence.E  {
+private class MergeLimitedSink<SourceElement, SourceSequence: ObservableConvertibleType, Observer: ObserverType>
+    : Sink<Observer>, ObserverType where Observer.E == SourceSequence.E {
     typealias QueueType = Queue<SourceSequence>
 
     let _maxConcurrent: Int
@@ -219,36 +215,36 @@ fileprivate class MergeLimitedSink<SourceElement, SourceSequence: ObservableConv
     var _stopped = false
     var _activeCount = 0
     var _queue = QueueType(capacity: 2)
-    
+
     let _sourceSubscription = SingleAssignmentDisposable()
     let _group = CompositeDisposable()
-    
+
     init(maxConcurrent: Int, observer: Observer, cancel: Cancelable) {
         _maxConcurrent = maxConcurrent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run(_ source: Observable<SourceElement>) -> Disposable {
-        let _ = _group.insert(_sourceSubscription)
-        
+        _ = _group.insert(_sourceSubscription)
+
         let disposable = source.subscribe(self)
         _sourceSubscription.setDisposable(disposable)
         return _group
     }
-    
+
     func subscribe(_ innerSource: SourceSequence, group: CompositeDisposable) {
         let subscription = SingleAssignmentDisposable()
-        
+
         let key = group.insert(subscription)
-        
+
         if let key = key {
             let observer = MergeLimitedSinkIter(parent: self, disposeKey: key)
-            
+
             let disposable = innerSource.asObservable().subscribe(observer)
             subscription.setDisposable(disposable)
         }
     }
-    
+
     func performMap(_ element: SourceElement) throws -> SourceSequence {
         rxAbstractMethod()
     }
@@ -260,8 +256,7 @@ fileprivate class MergeLimitedSink<SourceElement, SourceSequence: ObservableConv
             if _activeCount < _maxConcurrent {
                 _activeCount += 1
                 subscribe = true
-            }
-            else {
+            } else {
                 do {
                     let value = try performMap(element)
                     _queue.enqueue(value)
@@ -302,8 +297,7 @@ fileprivate class MergeLimitedSink<SourceElement, SourceSequence: ObservableConv
             if _activeCount == 0 {
                 forwardOn(.completed)
                 dispose()
-            }
-            else {
+            } else {
                 _sourceSubscription.dispose()
             }
 
@@ -312,15 +306,15 @@ fileprivate class MergeLimitedSink<SourceElement, SourceSequence: ObservableConv
     }
 }
 
-final fileprivate class MergeLimited<SourceSequence: ObservableConvertibleType> : Producer<SourceSequence.E> {
+final private class MergeLimited<SourceSequence: ObservableConvertibleType> : Producer<SourceSequence.E> {
     private let _source: Observable<SourceSequence>
     private let _maxConcurrent: Int
-    
+
     init(source: Observable<SourceSequence>, maxConcurrent: Int) {
         _source = source
         _maxConcurrent = maxConcurrent
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceSequence.E {
         let sink = MergeLimitedBasicSink<SourceSequence, O>(maxConcurrent: _maxConcurrent, observer: observer, cancel: cancel)
         let subscription = sink.run(_source)
@@ -378,7 +372,7 @@ fileprivate final class MergeSinkIter<SourceElement, SourceSequence: ObservableC
     typealias Parent = MergeSink<SourceElement, SourceSequence, Observer>
     typealias DisposeKey = CompositeDisposable.DisposeKey
     typealias E = Observer.E
-    
+
     private let _parent: Parent
     private let _disposeKey: DisposeKey
 
@@ -386,7 +380,7 @@ fileprivate final class MergeSinkIter<SourceElement, SourceSequence: ObservableC
         _parent = parent
         _disposeKey = disposeKey
     }
-    
+
     func on(_ event: Event<E>) {
         _parent._lock.lock(); defer { _parent._lock.unlock() } // lock {
             switch event {
@@ -404,10 +398,8 @@ fileprivate final class MergeSinkIter<SourceElement, SourceSequence: ObservableC
     }
 }
 
-
-fileprivate class MergeSink<SourceElement, SourceSequence: ObservableConvertibleType, Observer: ObserverType>
-    : Sink<Observer>
-    , ObserverType where Observer.E == SourceSequence.E {
+private class MergeSink<SourceElement, SourceSequence: ObservableConvertibleType, Observer: ObserverType>
+    : Sink<Observer>, ObserverType where Observer.E == SourceSequence.E {
     typealias ResultType = Observer.E
     typealias Element = SourceElement
 
@@ -443,15 +435,14 @@ fileprivate class MergeSink<SourceElement, SourceSequence: ObservableConvertible
                 let value = try performMap(element)
                 _activeCount += 1
                 return value
-            }
-            catch let e {
+            } catch let e {
                 forwardOn(.error(e))
                 dispose()
                 return nil
             }
         // }
     }
-    
+
     func on(_ event: Event<SourceElement>) {
         switch event {
         case .next(let element):
@@ -500,31 +491,31 @@ fileprivate class MergeSink<SourceElement, SourceSequence: ObservableConvertible
             self.dispose()
         }
     }
-    
+
     func run(_ source: Observable<SourceElement>) -> Disposable {
-        let _ = _group.insert(_sourceSubscription)
+        _ = _group.insert(_sourceSubscription)
 
         let subscription = source.subscribe(self)
         _sourceSubscription.setDisposable(subscription)
-        
+
         return _group
     }
 }
 
 // MARK: Producers
 
-final fileprivate class FlatMap<SourceElement, SourceSequence: ObservableConvertibleType>: Producer<SourceSequence.E> {
+final private class FlatMap<SourceElement, SourceSequence: ObservableConvertibleType>: Producer<SourceSequence.E> {
     typealias Selector = (SourceElement) throws -> SourceSequence
 
     private let _source: Observable<SourceElement>
-    
+
     private let _selector: Selector
 
     init(source: Observable<SourceElement>, selector: @escaping Selector) {
         _source = source
         _selector = selector
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceSequence.E {
         let sink = FlatMapSink(selector: _selector, observer: observer, cancel: cancel)
         let subscription = sink.run(_source)
@@ -532,7 +523,7 @@ final fileprivate class FlatMap<SourceElement, SourceSequence: ObservableConvert
     }
 }
 
-final fileprivate class FlatMapFirst<SourceElement, SourceSequence: ObservableConvertibleType>: Producer<SourceSequence.E> {
+final private class FlatMapFirst<SourceElement, SourceSequence: ObservableConvertibleType>: Producer<SourceSequence.E> {
     typealias Selector = (SourceElement) throws -> SourceSequence
 
     private let _source: Observable<SourceElement>
@@ -553,15 +544,15 @@ final fileprivate class FlatMapFirst<SourceElement, SourceSequence: ObservableCo
 
 final class ConcatMap<SourceElement, SourceSequence: ObservableConvertibleType>: Producer<SourceSequence.E> {
     typealias Selector = (SourceElement) throws -> SourceSequence
-    
+
     private let _source: Observable<SourceElement>
     private let _selector: Selector
-    
+
     init(source: Observable<SourceElement>, selector: @escaping Selector) {
         _source = source
         _selector = selector
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceSequence.E {
         let sink = ConcatMapSink<SourceElement, SourceSequence, O>(selector: _selector, observer: observer, cancel: cancel)
         let subscription = sink.run(_source)
@@ -575,7 +566,7 @@ final class Merge<SourceSequence: ObservableConvertibleType> : Producer<SourceSe
     init(source: Observable<SourceSequence>) {
         _source = source
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceSequence.E {
         let sink = MergeBasicSink<SourceSequence, O>(observer: observer, cancel: cancel)
         let subscription = sink.run(_source)
@@ -583,7 +574,7 @@ final class Merge<SourceSequence: ObservableConvertibleType> : Producer<SourceSe
     }
 }
 
-final fileprivate class MergeArray<Element> : Producer<Element> {
+final private class MergeArray<Element> : Producer<Element> {
     private let _sources: [Observable<Element>]
 
     init(sources: [Observable<Element>]) {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Multicast.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Multicast.swift
index a027c4f69c5dd6706ebfd1e3248549d051115128..5eaf9e981040523f6b10aae49e7b11861a68b780 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Multicast.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Multicast.swift
@@ -10,8 +10,7 @@
  Represents an observable wrapper that can be connected and disconnected from its underlying observable sequence.
  */
 public class ConnectableObservable<Element>
-    : Observable<Element>
-    , ConnectableObservableType {
+    : Observable<Element>, ConnectableObservableType {
 
     /**
      Connects the observable wrapper to its source. All subscribed observers will receive values from the underlying observable sequence as long as the connection is established.
@@ -24,7 +23,7 @@ public class ConnectableObservable<Element>
 }
 
 extension ObservableType {
-    
+
     /**
     Multicasts the source sequence notifications through an instantiated subject into all uses of the sequence within a selector function. 
     
@@ -49,7 +48,7 @@ extension ObservableType {
 }
 
 extension ObservableType {
-    
+
     /**
     Returns a connectable observable sequence that shares a single subscription to the underlying sequence. 
     
@@ -97,7 +96,7 @@ extension ObservableType {
 }
 
 extension ConnectableObservableType {
-    
+
     /**
     Returns an observable sequence that stays connected to the source as long as there is at least one subscription to the observable sequence.
 
@@ -147,13 +146,13 @@ extension ObservableType {
     }
 }
 
-final fileprivate class Connection<S: SubjectType> : ObserverType, Disposable {
+final private class Connection<S: SubjectType> : ObserverType, Disposable {
     typealias E = S.SubjectObserverType.E
 
     private var _lock: RecursiveLock
     // state
     private var _parent: ConnectableObservableAdapter<S>?
-    private var _subscription : Disposable?
+    private var _subscription: Disposable?
     private var _subjectObserver: S.SubjectObserverType
 
     private var _disposed: Bool = false
@@ -194,7 +193,7 @@ final fileprivate class Connection<S: SubjectType> : ObserverType, Disposable {
     }
 }
 
-final fileprivate class ConnectableObservableAdapter<S: SubjectType>
+final private class ConnectableObservableAdapter<S: SubjectType>
     : ConnectableObservable<S.E> {
     typealias ConnectionType = Connection<S>
 
@@ -239,14 +238,13 @@ final fileprivate class ConnectableObservableAdapter<S: SubjectType>
         return subject
     }
 
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == S.E {
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == S.E {
         return self.lazySubject.subscribe(observer)
     }
 }
 
-final fileprivate class RefCountSink<CO: ConnectableObservableType, O: ObserverType>
-    : Sink<O>
-    , ObserverType where CO.E == O.E {
+final private class RefCountSink<CO: ConnectableObservableType, O: ObserverType>
+    : Sink<O>, ObserverType where CO.E == O.E {
     typealias Element = O.E
     typealias Parent = RefCount<CO>
 
@@ -272,8 +270,7 @@ final fileprivate class RefCountSink<CO: ConnectableObservableType, O: ObserverT
         if _parent._count == 0 {
             _parent._count = 1
             _parent._connectableSubscription = _parent._source.connect()
-        }
-        else {
+        } else {
             _parent._count = _parent._count + 1
         }
         // }
@@ -292,11 +289,9 @@ final fileprivate class RefCountSink<CO: ConnectableObservableType, O: ObserverT
 
                 connectableSubscription.dispose()
                 self._parent._connectableSubscription = nil
-            }
-            else if self._parent._count > 1 {
+            } else if self._parent._count > 1 {
                 self._parent._count = self._parent._count - 1
-            }
-            else {
+            } else {
                 rxFatalError("Something went wrong with RefCount disposing mechanism")
             }
             // }
@@ -324,7 +319,7 @@ final fileprivate class RefCountSink<CO: ConnectableObservableType, O: ObserverT
     }
 }
 
-final fileprivate class RefCount<CO: ConnectableObservableType>: Producer<CO.E> {
+final private class RefCount<CO: ConnectableObservableType>: Producer<CO.E> {
     fileprivate let _lock = RecursiveLock()
 
     // state
@@ -345,37 +340,36 @@ final fileprivate class RefCount<CO: ConnectableObservableType>: Producer<CO.E>
     }
 }
 
-final fileprivate class MulticastSink<S: SubjectType, O: ObserverType>: Sink<O>, ObserverType {
+final private class MulticastSink<S: SubjectType, O: ObserverType>: Sink<O>, ObserverType {
     typealias Element = O.E
     typealias ResultType = Element
     typealias MutlicastType = Multicast<S, O.E>
-    
+
     private let _parent: MutlicastType
-    
+
     init(parent: MutlicastType, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         do {
             let subject = try _parent._subjectSelector()
             let connectable = ConnectableObservableAdapter(source: _parent._source, makeSubject: { subject })
-            
+
             let observable = try _parent._selector(connectable)
-            
+
             let subscription = observable.subscribe(self)
             let connection = connectable.connect()
-                
+
             return Disposables.create(subscription, connection)
-        }
-        catch let e {
+        } catch let e {
             forwardOn(.error(e))
             dispose()
             return Disposables.create()
         }
     }
-    
+
     func on(_ event: Event<ResultType>) {
         forwardOn(event)
         switch event {
@@ -386,20 +380,20 @@ final fileprivate class MulticastSink<S: SubjectType, O: ObserverType>: Sink<O>,
     }
 }
 
-final fileprivate class Multicast<S: SubjectType, R>: Producer<R> {
+final private class Multicast<S: SubjectType, R>: Producer<R> {
     typealias SubjectSelectorType = () throws -> S
     typealias SelectorType = (Observable<S.E>) throws -> Observable<R>
-    
+
     fileprivate let _source: Observable<S.SubjectObserverType.E>
     fileprivate let _subjectSelector: SubjectSelectorType
     fileprivate let _selector: SelectorType
-    
+
     init(source: Observable<S.SubjectObserverType.E>, subjectSelector: @escaping SubjectSelectorType, selector: @escaping SelectorType) {
         _source = source
         _subjectSelector = subjectSelector
         _selector = selector
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R {
         let sink = MulticastSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Never.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Never.swift
index d98a7a8fa4062f71f35a3a86a54364d342fa25c4..77ac7303b4334166b7093e0b4ce2aa2074a4b19c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Never.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Never.swift
@@ -20,8 +20,8 @@ extension ObservableType {
     }
 }
 
-final fileprivate class NeverProducer<Element> : Producer<Element> {
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+final private class NeverProducer<Element> : Producer<Element> {
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         return Disposables.create()
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ObserveOn.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ObserveOn.swift
index 82147a0fb21ef7f07819f4e5a770dbacddbd2b58..552ce7dc2dad47f6f47d2035228aff9990cbd69b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ObserveOn.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ObserveOn.swift
@@ -23,49 +23,48 @@ extension ObservableType {
         -> Observable<E> {
             if let scheduler = scheduler as? SerialDispatchQueueScheduler {
                 return ObserveOnSerialDispatchQueue(source: self.asObservable(), scheduler: scheduler)
-            }
-            else {
+            } else {
                 return ObserveOn(source: self.asObservable(), scheduler: scheduler)
             }
     }
 }
 
-final fileprivate class ObserveOn<E> : Producer<E> {
+final private class ObserveOn<E> : Producer<E> {
     let scheduler: ImmediateSchedulerType
     let source: Observable<E>
-    
+
     init(source: Observable<E>, scheduler: ImmediateSchedulerType) {
         self.scheduler = scheduler
         self.source = source
-        
+
 #if TRACE_RESOURCES
-        let _ = Resources.incrementTotal()
+        _ = Resources.incrementTotal()
 #endif
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
         let sink = ObserveOnSink(scheduler: scheduler, observer: observer, cancel: cancel)
         let subscription = source.subscribe(sink)
         return (sink: sink, subscription: subscription)
     }
-    
+
 #if TRACE_RESOURCES
     deinit {
-        let _ = Resources.decrementTotal()
+        _ = Resources.decrementTotal()
     }
 #endif
 }
 
-enum ObserveOnState : Int32 {
+enum ObserveOnState: Int32 {
     // pump is not running
     case stopped = 0
     // pump is running
     case running = 1
 }
 
-final fileprivate class ObserveOnSink<O: ObserverType> : ObserverBase<O.E> {
+final private class ObserveOnSink<O: ObserverType> : ObserverBase<O.E> {
     typealias E = O.E
-    
+
     let _scheduler: ImmediateSchedulerType
 
     var _lock = SpinLock()
@@ -87,7 +86,7 @@ final fileprivate class ObserveOnSink<O: ObserverType> : ObserverBase<O.E> {
     override func onCore(_ event: Event<E>) {
         let shouldStart = _lock.calculateLocked { () -> Bool in
             self._queue.enqueue(event)
-            
+
             switch self._state {
             case .stopped:
                 self._state = .running
@@ -96,18 +95,17 @@ final fileprivate class ObserveOnSink<O: ObserverType> : ObserverBase<O.E> {
                 return false
             }
         }
-        
+
         if shouldStart {
             _scheduleDisposable.disposable = self._scheduler.scheduleRecursive((), action: self.run)
         }
     }
-    
-    func run(_ state: (), _ recurse: (()) -> ()) {
+
+    func run(_ state: (), _ recurse: (()) -> Void) {
         let (nextEvent, observer) = self._lock.calculateLocked { () -> (Event<E>?, O) in
             if !self._queue.isEmpty {
                 return (self._queue.dequeue(), self._observer)
-            }
-            else {
+            } else {
                 self._state = .stopped
                 return (nil, self._observer)
             }
@@ -118,8 +116,7 @@ final fileprivate class ObserveOnSink<O: ObserverType> : ObserverBase<O.E> {
             if nextEvent.isStopEvent {
                 dispose()
             }
-        }
-        else {
+        } else {
             return
         }
 
@@ -134,14 +131,13 @@ final fileprivate class ObserveOnSink<O: ObserverType> : ObserverBase<O.E> {
         _lock.lock(); defer { _lock.unlock() } // {
             if !self._queue.isEmpty {
                 return true
-            }
-            else {
+            } else {
                 self._state = .stopped
                 return false
             }
         // }
     }
-    
+
     override func dispose() {
         super.dispose()
 
@@ -151,7 +147,7 @@ final fileprivate class ObserveOnSink<O: ObserverType> : ObserverBase<O.E> {
 }
 
 #if TRACE_RESOURCES
-    fileprivate var _numberOfSerialDispatchQueueObservables = AtomicInt(0)
+    private var _numberOfSerialDispatchQueueObservables = AtomicInt(0)
     extension Resources {
         /**
          Counts number of `SerialDispatchQueueObservables`.
@@ -164,7 +160,7 @@ final fileprivate class ObserveOnSink<O: ObserverType> : ObserverBase<O.E> {
     }
 #endif
 
-final fileprivate class ObserveOnSerialDispatchQueueSink<O: ObserverType> : ObserverBase<O.E> {
+final private class ObserveOnSerialDispatchQueueSink<O: ObserverType> : ObserverBase<O.E> {
     let scheduler: SerialDispatchQueueScheduler
     let observer: O
 
@@ -192,7 +188,7 @@ final fileprivate class ObserveOnSerialDispatchQueueSink<O: ObserverType> : Obse
     }
 
     override func onCore(_ event: Event<E>) {
-        let _ = self.scheduler.schedule((self, event), action: cachedScheduleLambda!)
+        _ = self.scheduler.schedule((self, event), action: cachedScheduleLambda!)
     }
 
     override func dispose() {
@@ -202,7 +198,7 @@ final fileprivate class ObserveOnSerialDispatchQueueSink<O: ObserverType> : Obse
     }
 }
 
-final fileprivate class ObserveOnSerialDispatchQueue<E> : Producer<E> {
+final private class ObserveOnSerialDispatchQueue<E> : Producer<E> {
     let scheduler: SerialDispatchQueueScheduler
     let source: Observable<E>
 
@@ -211,12 +207,12 @@ final fileprivate class ObserveOnSerialDispatchQueue<E> : Producer<E> {
         self.source = source
 
         #if TRACE_RESOURCES
-            let _ = Resources.incrementTotal()
-            let _ = _numberOfSerialDispatchQueueObservables.increment()
+            _ = Resources.incrementTotal()
+            _ = _numberOfSerialDispatchQueueObservables.increment()
         #endif
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
         let sink = ObserveOnSerialDispatchQueueSink(scheduler: scheduler, observer: observer, cancel: cancel)
         let subscription = source.subscribe(sink)
         return (sink: sink, subscription: subscription)
@@ -224,8 +220,8 @@ final fileprivate class ObserveOnSerialDispatchQueue<E> : Producer<E> {
 
     #if TRACE_RESOURCES
     deinit {
-        let _ = Resources.decrementTotal()
-        let _ = _numberOfSerialDispatchQueueObservables.decrement()
+        _ = Resources.decrementTotal()
+        _ = _numberOfSerialDispatchQueueObservables.decrement()
     }
     #endif
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Optional.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Optional.swift
index 8cd6a16bafb9b868765fefa755ccea6b3db96f5e..4f40fe14e34d71c39a1c611f3ab4b77ccee6ccd7 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Optional.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Optional.swift
@@ -33,7 +33,7 @@ extension ObservableType {
     }
 }
 
-final fileprivate class ObservableOptionalScheduledSink<O: ObserverType> : Sink<O> {
+final private class ObservableOptionalScheduledSink<O: ObserverType> : Sink<O> {
     typealias E = O.E
     typealias Parent = ObservableOptionalScheduled<E>
 
@@ -62,7 +62,7 @@ final fileprivate class ObservableOptionalScheduledSink<O: ObserverType> : Sink<
     }
 }
 
-final fileprivate class ObservableOptionalScheduled<E> : Producer<E> {
+final private class ObservableOptionalScheduled<E> : Producer<E> {
     fileprivate let _optional: E?
     fileprivate let _scheduler: ImmediateSchedulerType
 
@@ -71,21 +71,21 @@ final fileprivate class ObservableOptionalScheduled<E> : Producer<E> {
         _scheduler = scheduler
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
         let sink = ObservableOptionalScheduledSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
     }
 }
 
-final fileprivate class ObservableOptional<E>: Producer<E> {
+final private class ObservableOptional<E>: Producer<E> {
     private let _optional: E?
-    
+
     init(optional: E?) {
         _optional = optional
     }
-    
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == E {
+
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == E {
         if let element = _optional {
             observer.on(.next(element))
         }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Producer.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Producer.swift
index 2b60fbf8ed03b9b359ae1a5e710488ebbdad00e4..a1199e9796ffea47adb396b42a6bf4ff1df257a0 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Producer.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Producer.swift
@@ -10,8 +10,8 @@ class Producer<Element> : Observable<Element> {
     override init() {
         super.init()
     }
-    
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         if !CurrentThreadScheduler.isScheduleRequired {
             // The returned disposable needs to release all references once it was disposed.
             let disposer = SinkDisposer()
@@ -19,8 +19,7 @@ class Producer<Element> : Observable<Element> {
             disposer.setSinkAndSubscription(sink: sinkAndSubscription.sink, subscription: sinkAndSubscription.subscription)
 
             return disposer
-        }
-        else {
+        } else {
             return CurrentThreadScheduler.instance.schedule(()) { _ in
                 let disposer = SinkDisposer()
                 let sinkAndSubscription = self.run(observer, cancel: disposer)
@@ -30,8 +29,8 @@ class Producer<Element> : Observable<Element> {
             }
         }
     }
-    
-    func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         rxAbstractMethod()
     }
 }
@@ -43,8 +42,8 @@ fileprivate final class SinkDisposer: Cancelable {
     }
 
     private var _state = AtomicInt(0)
-    private var _sink: Disposable? = nil
-    private var _subscription: Disposable? = nil
+    private var _sink: Disposable?
+    private var _subscription: Disposable?
 
     var isDisposed: Bool {
         return _state.isFlagSet(DisposeState.disposed.rawValue)
@@ -66,7 +65,7 @@ fileprivate final class SinkDisposer: Cancelable {
             _subscription = nil
         }
     }
-    
+
     func dispose() {
         let previousState = _state.fetchOr(DisposeState.disposed.rawValue)
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Range.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Range.swift
index 9b85554eb78a033a7c275c661e3b3c10aa1ba942..8d455cae4f60c6f93e07710884b573f87820a9a1 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Range.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Range.swift
@@ -6,7 +6,7 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-extension ObservableType where E : RxAbstractInteger {
+extension ObservableType where E: RxAbstractInteger {
     /**
      Generates an observable sequence of integral numbers within a specified range, using the specified scheduler to generate and send out observer messages.
 
@@ -22,7 +22,7 @@ extension ObservableType where E : RxAbstractInteger {
     }
 }
 
-final fileprivate class RangeProducer<E: RxAbstractInteger> : Producer<E> {
+final private class RangeProducer<E: RxAbstractInteger> : Producer<E> {
     fileprivate let _start: E
     fileprivate let _count: E
     fileprivate let _scheduler: ImmediateSchedulerType
@@ -40,31 +40,30 @@ final fileprivate class RangeProducer<E: RxAbstractInteger> : Producer<E> {
         _count = count
         _scheduler = scheduler
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
         let sink = RangeSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
     }
 }
 
-final fileprivate class RangeSink<O: ObserverType> : Sink<O> where O.E: RxAbstractInteger {
+final private class RangeSink<O: ObserverType> : Sink<O> where O.E: RxAbstractInteger {
     typealias Parent = RangeProducer<O.E>
-    
+
     private let _parent: Parent
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         return _parent._scheduler.scheduleRecursive(0 as O.E) { i, recurse in
             if i < self._parent._count {
                 self.forwardOn(.next(self._parent._start + i))
                 recurse(i + 1)
-            }
-            else {
+            } else {
                 self.forwardOn(.completed)
                 self.dispose()
             }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Reduce.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Reduce.swift
index 3e4a7b9de94ce47bac298961a1d79e978ec29392..964d6c66323194721fe7f1572911563f8007f8f5 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Reduce.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Reduce.swift
@@ -6,7 +6,6 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-
 extension ObservableType {
     /**
     Applies an `accumulator` function over an observable sequence, returning the result of the aggregation as a single element in the result sequence. The specified `seed` value is used as the initial accumulator value.
@@ -42,27 +41,26 @@ extension ObservableType {
     }
 }
 
-final fileprivate class ReduceSink<SourceType, AccumulateType, O: ObserverType> : Sink<O>, ObserverType {
+final private class ReduceSink<SourceType, AccumulateType, O: ObserverType> : Sink<O>, ObserverType {
     typealias ResultType = O.E
     typealias Parent = Reduce<SourceType, AccumulateType, ResultType>
-    
+
     private let _parent: Parent
     private var _accumulation: AccumulateType
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _accumulation = parent._seed
-        
+
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<SourceType>) {
         switch event {
         case .next(let value):
             do {
                 _accumulation = try _parent._accumulator(_accumulation, value)
-            }
-            catch let e {
+            } catch let e {
                 forwardOn(.error(e))
                 dispose()
             }
@@ -75,8 +73,7 @@ final fileprivate class ReduceSink<SourceType, AccumulateType, O: ObserverType>
                 forwardOn(.next(result))
                 forwardOn(.completed)
                 dispose()
-            }
-            catch let e {
+            } catch let e {
                 forwardOn(.error(e))
                 dispose()
             }
@@ -84,15 +81,15 @@ final fileprivate class ReduceSink<SourceType, AccumulateType, O: ObserverType>
     }
 }
 
-final fileprivate class Reduce<SourceType, AccumulateType, ResultType> : Producer<ResultType> {
+final private class Reduce<SourceType, AccumulateType, ResultType> : Producer<ResultType> {
     typealias AccumulatorType = (AccumulateType, SourceType) throws -> AccumulateType
     typealias ResultSelectorType = (AccumulateType) throws -> ResultType
-    
+
     fileprivate let _source: Observable<SourceType>
     fileprivate let _seed: AccumulateType
     fileprivate let _accumulator: AccumulatorType
     fileprivate let _mapResult: ResultSelectorType
-    
+
     init(source: Observable<SourceType>, seed: AccumulateType, accumulator: @escaping AccumulatorType, mapResult: @escaping ResultSelectorType) {
         _source = source
         _seed = seed
@@ -106,4 +103,3 @@ final fileprivate class Reduce<SourceType, AccumulateType, ResultType> : Produce
         return (sink: sink, subscription: subscription)
     }
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Repeat.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Repeat.swift
index 6892ec128b99d027b823d78bd7ee36e4ed11fb24..f66adb29d4bc4f2667414feba6028331ff8bd08c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Repeat.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Repeat.swift
@@ -21,16 +21,16 @@ extension ObservableType {
     }
 }
 
-final fileprivate class RepeatElement<Element> : Producer<Element> {
+final private class RepeatElement<Element> : Producer<Element> {
     fileprivate let _element: Element
     fileprivate let _scheduler: ImmediateSchedulerType
-    
+
     init(element: Element, scheduler: ImmediateSchedulerType) {
         _element = element
         _scheduler = scheduler
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = RepeatElementSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
 
@@ -38,16 +38,16 @@ final fileprivate class RepeatElement<Element> : Producer<Element> {
     }
 }
 
-final fileprivate class RepeatElementSink<O: ObserverType> : Sink<O> {
+final private class RepeatElementSink<O: ObserverType> : Sink<O> {
     typealias Parent = RepeatElement<O.E>
-    
+
     private let _parent: Parent
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         return _parent._scheduler.scheduleRecursive(_parent._element) { e, recurse in
             self.forwardOn(.next(e))
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/RetryWhen.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/RetryWhen.swift
index 268b399a8c2a3c84c1f8a5f8f5b62330c55f5d71..39a3e4ba399bb340f3e5a5a51e49163e46171e52 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/RetryWhen.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/RetryWhen.swift
@@ -37,12 +37,12 @@ extension ObservableType {
     }
 }
 
-final fileprivate class RetryTriggerSink<S: Sequence, O: ObserverType, TriggerObservable: ObservableType, Error>
-    : ObserverType where S.Iterator.Element : ObservableType, S.Iterator.Element.E == O.E {
+final private class RetryTriggerSink<S: Sequence, O: ObserverType, TriggerObservable: ObservableType, Error>
+    : ObserverType where S.Iterator.Element: ObservableType, S.Iterator.Element.E == O.E {
     typealias E = TriggerObservable.E
-    
+
     typealias Parent = RetryWhenSequenceSinkIter<S, O, TriggerObservable, Error>
-    
+
     fileprivate let _parent: Parent
 
     init(parent: Parent) {
@@ -64,9 +64,8 @@ final fileprivate class RetryTriggerSink<S: Sequence, O: ObserverType, TriggerOb
     }
 }
 
-final fileprivate class RetryWhenSequenceSinkIter<S: Sequence, O: ObserverType, TriggerObservable: ObservableType, Error>
-    : ObserverType
-    , Disposable where S.Iterator.Element : ObservableType, S.Iterator.Element.E == O.E {
+final private class RetryWhenSequenceSinkIter<S: Sequence, O: ObserverType, TriggerObservable: ObservableType, Error>
+    : ObserverType, Disposable where S.Iterator.Element: ObservableType, S.Iterator.Element.E == O.E {
     typealias E = O.E
     typealias Parent = RetryWhenSequenceSink<S, O, TriggerObservable, Error>
 
@@ -93,8 +92,7 @@ final fileprivate class RetryWhenSequenceSinkIter<S: Sequence, O: ObserverType,
                 let errorHandlerSubscription = _parent._notifier.subscribe(RetryTriggerSink(parent: self))
                 _errorHandlerSubscription.setDisposable(errorHandlerSubscription)
                 _parent._errorSubject.on(.next(failedWith))
-            }
-            else {
+            } else {
                 _parent.forwardOn(.error(error))
                 _parent.dispose()
             }
@@ -110,15 +108,15 @@ final fileprivate class RetryWhenSequenceSinkIter<S: Sequence, O: ObserverType,
     }
 }
 
-final fileprivate class RetryWhenSequenceSink<S: Sequence, O: ObserverType, TriggerObservable: ObservableType, Error>
-    : TailRecursiveSink<S, O> where S.Iterator.Element : ObservableType, S.Iterator.Element.E == O.E {
+final private class RetryWhenSequenceSink<S: Sequence, O: ObserverType, TriggerObservable: ObservableType, Error>
+    : TailRecursiveSink<S, O> where S.Iterator.Element: ObservableType, S.Iterator.Element.E == O.E {
     typealias Element = O.E
     typealias Parent = RetryWhenSequence<S, TriggerObservable, Error>
-    
+
     let _lock = RecursiveLock()
-    
+
     fileprivate let _parent: Parent
-    
+
     fileprivate var _lastError: Swift.Error?
     fileprivate let _errorSubject = PublishSubject<Error>()
     fileprivate let _handler: Observable<TriggerObservable.E>
@@ -129,19 +127,18 @@ final fileprivate class RetryWhenSequenceSink<S: Sequence, O: ObserverType, Trig
         _handler = parent._notificationHandler(_errorSubject).asObservable()
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     override func done() {
         if let lastError = _lastError {
             forwardOn(.error(lastError))
             _lastError = nil
-        }
-        else {
+        } else {
             forwardOn(.completed)
         }
 
         dispose()
     }
-    
+
     override func extract(_ observable: Observable<E>) -> SequenceGenerator? {
         // It is important to always return `nil` here because there are sideffects in the `run` method
         // that are dependant on particular `retryWhen` operator so single operator stack can't be reused in this
@@ -163,18 +160,18 @@ final fileprivate class RetryWhenSequenceSink<S: Sequence, O: ObserverType, Trig
     }
 }
 
-final fileprivate class RetryWhenSequence<S: Sequence, TriggerObservable: ObservableType, Error> : Producer<S.Iterator.Element.E> where S.Iterator.Element : ObservableType {
+final private class RetryWhenSequence<S: Sequence, TriggerObservable: ObservableType, Error> : Producer<S.Iterator.Element.E> where S.Iterator.Element: ObservableType {
     typealias Element = S.Iterator.Element.E
-    
+
     fileprivate let _sources: S
     fileprivate let _notificationHandler: (Observable<Error>) -> TriggerObservable
-    
+
     init(sources: S, notificationHandler: @escaping (Observable<Error>) -> TriggerObservable) {
         _sources = sources
         _notificationHandler = notificationHandler
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = RetryWhenSequenceSink<S, O, TriggerObservable, Error>(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run((self._sources.makeIterator(), nil))
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sample.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sample.swift
index 31f8b625d6919d06c7b8f927e6d835a1f83f637b..4d479b1e9a6ad77a2d4eca9db028071f6c63d4ac 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sample.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sample.swift
@@ -26,24 +26,22 @@ extension ObservableType {
     }
 }
 
-final fileprivate class SamplerSink<O: ObserverType, SampleType>
-    : ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+final private class SamplerSink<O: ObserverType, SampleType>
+    : ObserverType, LockOwnerType, SynchronizedOnType {
     typealias E = SampleType
-    
+
     typealias Parent = SampleSequenceSink<O, SampleType>
-    
+
     fileprivate let _parent: Parent
 
     var _lock: RecursiveLock {
         return _parent._lock
     }
-    
+
     init(parent: Parent) {
         _parent = parent
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -76,36 +74,33 @@ final fileprivate class SamplerSink<O: ObserverType, SampleType>
     }
 }
 
-final fileprivate class SampleSequenceSink<O: ObserverType, SampleType>
-    : Sink<O>
-    , ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+final private class SampleSequenceSink<O: ObserverType, SampleType>
+    : Sink<O>, ObserverType, LockOwnerType, SynchronizedOnType {
     typealias Element = O.E
     typealias Parent = Sample<Element, SampleType>
-    
+
     fileprivate let _parent: Parent
 
     let _lock = RecursiveLock()
-    
+
     // state
     fileprivate var _element = nil as Element?
     fileprivate var _atEnd = false
-    
+
     fileprivate let _sourceSubscription = SingleAssignmentDisposable()
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         _sourceSubscription.setDisposable(_parent._source.subscribe(self))
         let samplerSubscription = _parent._sampler.subscribe(SamplerSink(parent: self))
-        
+
         return Disposables.create(_sourceSubscription, samplerSubscription)
     }
-    
+
     func on(_ event: Event<Element>) {
         synchronizedOn(event)
     }
@@ -122,10 +117,10 @@ final fileprivate class SampleSequenceSink<O: ObserverType, SampleType>
             _sourceSubscription.dispose()
         }
     }
-    
+
 }
 
-final fileprivate class Sample<Element, SampleType> : Producer<Element> {
+final private class Sample<Element, SampleType> : Producer<Element> {
     fileprivate let _source: Observable<Element>
     fileprivate let _sampler: Observable<SampleType>
 
@@ -133,7 +128,7 @@ final fileprivate class Sample<Element, SampleType> : Producer<Element> {
         _source = source
         _sampler = sampler
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = SampleSequenceSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Scan.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Scan.swift
index 39d5e92f4e28a557d30d5b44bf1c506e79d9d783..56877b2703284d3ea9da0b3f6fcd2c1983943ff3 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Scan.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Scan.swift
@@ -19,7 +19,7 @@ extension ObservableType {
      - parameter accumulator: An accumulator function to be invoked on each element.
      - returns: An observable sequence containing the accumulated values.
      */
-    public func scan<A>(into seed: A, accumulator: @escaping (inout A, E) throws -> ())
+    public func scan<A>(into seed: A, accumulator: @escaping (inout A, E) throws -> Void)
         -> Observable<A> {
         return Scan(source: self.asObservable(), seed: seed, accumulator: accumulator)
     }
@@ -44,28 +44,27 @@ extension ObservableType {
     }
 }
 
-final fileprivate class ScanSink<ElementType, O: ObserverType> : Sink<O>, ObserverType {
+final private class ScanSink<ElementType, O: ObserverType> : Sink<O>, ObserverType {
     typealias Accumulate = O.E
     typealias Parent = Scan<ElementType, Accumulate>
     typealias E = ElementType
-    
+
     fileprivate let _parent: Parent
     fileprivate var _accumulate: Accumulate
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _accumulate = parent._seed
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<ElementType>) {
         switch event {
         case .next(let element):
             do {
                 try _parent._accumulator(&_accumulate, element)
                 forwardOn(.next(_accumulate))
-            }
-            catch let error {
+            } catch let error {
                 forwardOn(.error(error))
                 dispose()
             }
@@ -77,23 +76,23 @@ final fileprivate class ScanSink<ElementType, O: ObserverType> : Sink<O>, Observ
             dispose()
         }
     }
-    
+
 }
 
-final fileprivate class Scan<Element, Accumulate>: Producer<Accumulate> {
-    typealias Accumulator = (inout Accumulate, Element) throws -> ()
-    
+final private class Scan<Element, Accumulate>: Producer<Accumulate> {
+    typealias Accumulator = (inout Accumulate, Element) throws -> Void
+
     fileprivate let _source: Observable<Element>
     fileprivate let _seed: Accumulate
     fileprivate let _accumulator: Accumulator
-    
+
     init(source: Observable<Element>, seed: Accumulate, accumulator: @escaping Accumulator) {
         _source = source
         _seed = seed
         _accumulator = accumulator
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Accumulate {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Accumulate {
         let sink = ScanSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sequence.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sequence.swift
index e141bc72f7ecbe2a91789fe25ab8cecea3092828..79b0af4e39466d9f8541b22f6d9cc84ec2feffcb 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sequence.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sequence.swift
@@ -47,7 +47,7 @@ extension ObservableType {
     }
 }
 
-final fileprivate class ObservableSequenceSink<S: Sequence, O: ObserverType> : Sink<O> where S.Iterator.Element == O.E {
+final private class ObservableSequenceSink<S: Sequence, O: ObserverType> : Sink<O> where S.Iterator.Element == O.E {
     typealias Parent = ObservableSequence<S>
 
     private let _parent: Parent
@@ -63,8 +63,7 @@ final fileprivate class ObservableSequenceSink<S: Sequence, O: ObserverType> : S
             if let next = mutableIterator.0.next() {
                 self.forwardOn(.next(next))
                 recurse(mutableIterator)
-            }
-            else {
+            } else {
                 self.forwardOn(.completed)
                 self.dispose()
             }
@@ -72,7 +71,7 @@ final fileprivate class ObservableSequenceSink<S: Sequence, O: ObserverType> : S
     }
 }
 
-final fileprivate class ObservableSequence<S: Sequence> : Producer<S.Iterator.Element> {
+final private class ObservableSequence<S: Sequence> : Producer<S.Iterator.Element> {
     fileprivate let _elements: S
     fileprivate let _scheduler: ImmediateSchedulerType
 
@@ -81,7 +80,7 @@ final fileprivate class ObservableSequence<S: Sequence> : Producer<S.Iterator.El
         _scheduler = scheduler
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
         let sink = ObservableSequenceSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift
index 5af102f02fc72c27e392d541d880a4897659db7d..f32fedb194ddd085bbd9d94b65733c73e66b0e97 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift
@@ -157,8 +157,7 @@ extension ObservableType {
 }
 
 fileprivate final class ShareReplay1WhileConnectedConnection<Element>
-    : ObserverType
-    , SynchronizedUnsubscribeType {
+    : ObserverType, SynchronizedUnsubscribeType {
     typealias E = Element
     typealias Observers = AnyObserver<Element>.s
     typealias DisposeKey = Observers.KeyType
@@ -208,7 +207,7 @@ fileprivate final class ShareReplay1WhileConnectedConnection<Element>
         _subscription.setDisposable(_parent._source.subscribe(self))
     }
 
-    final func _synchronized_subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+    final func _synchronized_subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         _lock.lock(); defer { _lock.unlock() }
         if let element = _element {
             observer.on(.next(element))
@@ -259,7 +258,7 @@ fileprivate final class ShareReplay1WhileConnectedConnection<Element>
 }
 
 // optimized version of share replay for most common case
-final fileprivate class ShareReplay1WhileConnected<Element>
+final private class ShareReplay1WhileConnected<Element>
     : Observable<Element> {
 
     fileprivate typealias Connection = ShareReplay1WhileConnectedConnection<Element>
@@ -274,7 +273,7 @@ final fileprivate class ShareReplay1WhileConnected<Element>
         self._source = source
     }
 
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == E {
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == E {
         _lock.lock()
 
         let connection = _synchronized_subscribe(observer)
@@ -283,7 +282,7 @@ final fileprivate class ShareReplay1WhileConnected<Element>
         let disposable = connection._synchronized_subscribe(observer)
 
         _lock.unlock()
-        
+
         if count == 0 {
             connection.connect()
         }
@@ -292,13 +291,12 @@ final fileprivate class ShareReplay1WhileConnected<Element>
     }
 
     @inline(__always)
-    private func _synchronized_subscribe<O : ObserverType>(_ observer: O) -> Connection where O.E == E {
+    private func _synchronized_subscribe<O: ObserverType>(_ observer: O) -> Connection where O.E == E {
         let connection: Connection
 
         if let existingConnection = _connection {
             connection = existingConnection
-        }
-        else {
+        } else {
             connection = ShareReplay1WhileConnectedConnection<Element>(
                 parent: self,
                 lock: _lock)
@@ -310,8 +308,7 @@ final fileprivate class ShareReplay1WhileConnected<Element>
 }
 
 fileprivate final class ShareWhileConnectedConnection<Element>
-    : ObserverType
-    , SynchronizedUnsubscribeType {
+    : ObserverType, SynchronizedUnsubscribeType {
     typealias E = Element
     typealias Observers = AnyObserver<Element>.s
     typealias DisposeKey = Observers.KeyType
@@ -359,7 +356,7 @@ fileprivate final class ShareWhileConnectedConnection<Element>
         _subscription.setDisposable(_parent._source.subscribe(self))
     }
 
-    final func _synchronized_subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+    final func _synchronized_subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         _lock.lock(); defer { _lock.unlock() }
 
         let disposeKey = _observers.insert(observer.on)
@@ -407,7 +404,7 @@ fileprivate final class ShareWhileConnectedConnection<Element>
 }
 
 // optimized version of share replay for most common case
-final fileprivate class ShareWhileConnected<Element>
+final private class ShareWhileConnected<Element>
     : Observable<Element> {
 
     fileprivate typealias Connection = ShareWhileConnectedConnection<Element>
@@ -422,7 +419,7 @@ final fileprivate class ShareWhileConnected<Element>
         self._source = source
     }
 
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == E {
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == E {
         _lock.lock()
 
         let connection = _synchronized_subscribe(observer)
@@ -440,19 +437,18 @@ final fileprivate class ShareWhileConnected<Element>
     }
 
     @inline(__always)
-    private func _synchronized_subscribe<O : ObserverType>(_ observer: O) -> Connection where O.E == E {
+    private func _synchronized_subscribe<O: ObserverType>(_ observer: O) -> Connection where O.E == E {
         let connection: Connection
 
         if let existingConnection = _connection {
             connection = existingConnection
-        }
-        else {
+        } else {
             connection = ShareWhileConnectedConnection<Element>(
                 parent: self,
                 lock: _lock)
             _connection = connection
         }
-        
+
         return connection
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SingleAsync.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SingleAsync.swift
index 1419a93fc8e70781d6dd2c161ccdd8a1663af4a0..265e8774432f6f2c094910b4fd09f754e6a21615 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SingleAsync.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SingleAsync.swift
@@ -40,15 +40,15 @@ fileprivate final class SingleAsyncSink<O: ObserverType> : Sink<O>, ObserverType
     typealias ElementType = O.E
     typealias Parent = SingleAsync<ElementType>
     typealias E = ElementType
-    
+
     private let _parent: Parent
     private var _seenValue: Bool = false
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<E>) {
         switch event {
         case .next(let value):
@@ -57,8 +57,7 @@ fileprivate final class SingleAsyncSink<O: ObserverType> : Sink<O>, ObserverType
                 if !forward {
                     return
                 }
-            }
-            catch let error {
+            } catch let error {
                 forwardOn(.error(error as Swift.Error))
                 dispose()
                 return
@@ -88,16 +87,16 @@ fileprivate final class SingleAsyncSink<O: ObserverType> : Sink<O>, ObserverType
 
 final class SingleAsync<Element>: Producer<Element> {
     typealias Predicate = (Element) throws -> Bool
-    
+
     fileprivate let _source: Observable<Element>
     fileprivate let _predicate: Predicate?
-    
+
     init(source: Observable<Element>, predicate: Predicate? = nil) {
         _source = source
         _predicate = predicate
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = SingleAsyncSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sink.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sink.swift
index 214cfda326041785034fc99535c3735c1e5e1cc4..88c3e86dadbb02c371da8fd7053e907a1e300115 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sink.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sink.swift
@@ -6,7 +6,7 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-class Sink<O : ObserverType> : Disposable {
+class Sink<O: ObserverType> : Disposable {
     fileprivate let _observer: O
     fileprivate let _cancel: Cancelable
     fileprivate var _disposed: Bool
@@ -17,13 +17,13 @@ class Sink<O : ObserverType> : Disposable {
 
     init(observer: O, cancel: Cancelable) {
 #if TRACE_RESOURCES
-        let _ = Resources.incrementTotal()
+        _ = Resources.incrementTotal()
 #endif
         _observer = observer
         _cancel = cancel
         _disposed = false
     }
-    
+
     final func forwardOn(_ event: Event<O.E>) {
         #if DEBUG
             _synchronizationTracker.register(synchronizationErrorMessage: .default)
@@ -34,7 +34,7 @@ class Sink<O : ObserverType> : Disposable {
         }
         _observer.on(event)
     }
-    
+
     final func forwarder() -> SinkForward<O> {
         return SinkForward(forward: self)
     }
@@ -50,20 +50,20 @@ class Sink<O : ObserverType> : Disposable {
 
     deinit {
 #if TRACE_RESOURCES
-       let _ =  Resources.decrementTotal()
+       _ =  Resources.decrementTotal()
 #endif
     }
 }
 
 final class SinkForward<O: ObserverType>: ObserverType {
     typealias E = O.E
-    
+
     private let _forward: Sink<O>
-    
+
     init(forward: Sink<O>) {
         _forward = forward
     }
-    
+
     final func on(_ event: Event<E>) {
         switch event {
         case .next:
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Skip.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Skip.swift
index fcac9d4a0292fc491e1cb9eb0609512da2203ca1..96186c7ddee223daa3229ff84526c709b77106be 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Skip.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Skip.swift
@@ -41,28 +41,27 @@ extension ObservableType {
 
 // count version
 
-final fileprivate class SkipCountSink<O: ObserverType> : Sink<O>, ObserverType {
+final private class SkipCountSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias Element = O.E
     typealias Parent = SkipCount<Element>
-    
+
     let parent: Parent
-    
+
     var remaining: Int
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         self.parent = parent
         self.remaining = parent.count
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<Element>) {
         switch event {
         case .next(let value):
-            
+
             if remaining <= 0 {
                 forwardOn(.next(value))
-            }
-            else {
+            } else {
                 remaining -= 1
             }
         case .error:
@@ -73,19 +72,19 @@ final fileprivate class SkipCountSink<O: ObserverType> : Sink<O>, ObserverType {
             self.dispose()
         }
     }
-    
+
 }
 
-final fileprivate class SkipCount<Element>: Producer<Element> {
+final private class SkipCount<Element>: Producer<Element> {
     let source: Observable<Element>
     let count: Int
-    
+
     init(source: Observable<Element>, count: Int) {
         self.source = source
         self.count = count
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = SkipCountSink(parent: self, observer: observer, cancel: cancel)
         let subscription = source.subscribe(sink)
 
@@ -95,20 +94,20 @@ final fileprivate class SkipCount<Element>: Producer<Element> {
 
 // time version
 
-final fileprivate class SkipTimeSink<ElementType, O: ObserverType> : Sink<O>, ObserverType where O.E == ElementType {
+final private class SkipTimeSink<ElementType, O: ObserverType> : Sink<O>, ObserverType where O.E == ElementType {
     typealias Parent = SkipTime<ElementType>
     typealias Element = ElementType
 
     let parent: Parent
-    
+
     // state
     var open = false
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         self.parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<Element>) {
         switch event {
         case .next(let value):
@@ -123,35 +122,35 @@ final fileprivate class SkipTimeSink<ElementType, O: ObserverType> : Sink<O>, Ob
             self.dispose()
         }
     }
-    
+
     func tick() {
         open = true
     }
-    
+
     func run() -> Disposable {
-        let disposeTimer = parent.scheduler.scheduleRelative((), dueTime: self.parent.duration) { _ in 
+        let disposeTimer = parent.scheduler.scheduleRelative((), dueTime: self.parent.duration) { _ in
             self.tick()
             return Disposables.create()
         }
-        
+
         let disposeSubscription = parent.source.subscribe(self)
-        
+
         return Disposables.create(disposeTimer, disposeSubscription)
     }
 }
 
-final fileprivate class SkipTime<Element>: Producer<Element> {
+final private class SkipTime<Element>: Producer<Element> {
     let source: Observable<Element>
     let duration: RxTimeInterval
     let scheduler: SchedulerType
-    
+
     init(source: Observable<Element>, duration: RxTimeInterval, scheduler: SchedulerType) {
         self.source = source
         self.scheduler = scheduler
         self.duration = duration
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = SkipTimeSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipUntil.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipUntil.swift
index f35f1fd8aee5170ca35e15ccd6aac918eb5b53b5..d466cce36f581fad0c1e8d5b7791865328199518 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipUntil.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipUntil.swift
@@ -22,25 +22,23 @@ extension ObservableType {
     }
 }
 
-final fileprivate class SkipUntilSinkOther<Other, O: ObserverType>
-    : ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+final private class SkipUntilSinkOther<Other, O: ObserverType>
+    : ObserverType, LockOwnerType, SynchronizedOnType {
     typealias Parent = SkipUntilSink<Other, O>
     typealias E = Other
-    
+
     fileprivate let _parent: Parent
 
     var _lock: RecursiveLock {
         return _parent._lock
     }
-    
+
     let _subscription = SingleAssignmentDisposable()
 
     init(parent: Parent) {
         _parent = parent
         #if TRACE_RESOURCES
-            let _ = Resources.incrementTotal()
+            _ = Resources.incrementTotal()
         #endif
     }
 
@@ -60,35 +58,31 @@ final fileprivate class SkipUntilSinkOther<Other, O: ObserverType>
             _subscription.dispose()
         }
     }
-    
+
     #if TRACE_RESOURCES
     deinit {
-        let _ = Resources.decrementTotal()
+        _ = Resources.decrementTotal()
     }
     #endif
 
 }
 
-
-final fileprivate class SkipUntilSink<Other, O: ObserverType>
-    : Sink<O>
-    , ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+final private class SkipUntilSink<Other, O: ObserverType>
+    : Sink<O>, ObserverType, LockOwnerType, SynchronizedOnType {
     typealias E = O.E
     typealias Parent = SkipUntil<E, Other>
-    
+
     let _lock = RecursiveLock()
     fileprivate let _parent: Parent
     fileprivate var _forwardElements = false
-    
+
     fileprivate let _sourceSubscription = SingleAssignmentDisposable()
 
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -109,29 +103,29 @@ final fileprivate class SkipUntilSink<Other, O: ObserverType>
             self.dispose()
         }
     }
-    
+
     func run() -> Disposable {
         let sourceSubscription = _parent._source.subscribe(self)
         let otherObserver = SkipUntilSinkOther(parent: self)
         let otherSubscription = _parent._other.subscribe(otherObserver)
         _sourceSubscription.setDisposable(sourceSubscription)
         otherObserver._subscription.setDisposable(otherSubscription)
-        
+
         return Disposables.create(_sourceSubscription, otherObserver._subscription)
     }
 }
 
-final fileprivate class SkipUntil<Element, Other>: Producer<Element> {
-    
+final private class SkipUntil<Element, Other>: Producer<Element> {
+
     fileprivate let _source: Observable<Element>
     fileprivate let _other: Observable<Other>
-    
+
     init(source: Observable<Element>, other: Observable<Other>) {
         _source = source
         _other = other
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = SkipUntilSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipWhile.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipWhile.swift
index 4bb394b96464c975338c25086773d8330cbe58eb..5fb122fe5c2ac328d750c4ce5b2d584f46a0d75f 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipWhile.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipWhile.swift
@@ -21,7 +21,7 @@ extension ObservableType {
     }
 }
 
-final fileprivate class SkipWhileSink<O: ObserverType> : Sink<O>, ObserverType {
+final private class SkipWhileSink<O: ObserverType> : Sink<O>, ObserverType {
 
     typealias Element = O.E
     typealias Parent = SkipWhile<Element>
@@ -57,7 +57,7 @@ final fileprivate class SkipWhileSink<O: ObserverType> : Sink<O>, ObserverType {
     }
 }
 
-final fileprivate class SkipWhile<Element>: Producer<Element> {
+final private class SkipWhile<Element>: Producer<Element> {
     typealias Predicate = (Element) throws -> Bool
     typealias PredicateWithIndex = (Element, Int) throws -> Bool
 
@@ -69,7 +69,7 @@ final fileprivate class SkipWhile<Element>: Producer<Element> {
         _predicate = predicate
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = SkipWhileSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/StartWith.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/StartWith.swift
index 14776f9e652aa48e3e4072f251f5c1d9abd4746a..deebf4b52e3098e29d9c47817c68538b01249710 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/StartWith.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/StartWith.swift
@@ -22,7 +22,7 @@ extension ObservableType {
     }
 }
 
-final fileprivate class StartWith<Element>: Producer<Element> {
+final private class StartWith<Element>: Producer<Element> {
     let elements: [Element]
     let source: Observable<Element>
 
@@ -32,7 +32,7 @@ final fileprivate class StartWith<Element>: Producer<Element> {
         super.init()
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         for e in elements {
             observer.on(.next(e))
         }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SubscribeOn.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SubscribeOn.swift
index 2a33e03e5a8ca33d38bd640576b4fb9839b44e66..aad97d65e1ee06b3fce3644e3052738b8610fc35 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SubscribeOn.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SubscribeOn.swift
@@ -29,31 +29,31 @@ extension ObservableType {
     }
 }
 
-final fileprivate class SubscribeOnSink<Ob: ObservableType, O: ObserverType> : Sink<O>, ObserverType where Ob.E == O.E {
+final private class SubscribeOnSink<Ob: ObservableType, O: ObserverType> : Sink<O>, ObserverType where Ob.E == O.E {
     typealias Element = O.E
     typealias Parent = SubscribeOn<Ob>
-    
+
     let parent: Parent
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         self.parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<Element>) {
         forwardOn(event)
-        
+
         if event.isStopEvent {
             self.dispose()
         }
     }
-    
+
     func run() -> Disposable {
         let disposeEverything = SerialDisposable()
         let cancelSchedule = SingleAssignmentDisposable()
-        
+
         disposeEverything.disposable = cancelSchedule
-        
+
         let disposeSchedule = parent.scheduler.schedule(()) { (_) -> Disposable in
             let subscription = self.parent.source.subscribe(self)
             disposeEverything.disposable = ScheduledDisposable(scheduler: self.parent.scheduler, disposable: subscription)
@@ -61,21 +61,21 @@ final fileprivate class SubscribeOnSink<Ob: ObservableType, O: ObserverType> : S
         }
 
         cancelSchedule.setDisposable(disposeSchedule)
-    
+
         return disposeEverything
     }
 }
 
-final fileprivate class SubscribeOn<Ob: ObservableType> : Producer<Ob.E> {
+final private class SubscribeOn<Ob: ObservableType> : Producer<Ob.E> {
     let source: Ob
     let scheduler: ImmediateSchedulerType
-    
+
     init(source: Ob, scheduler: ImmediateSchedulerType) {
         self.source = source
         self.scheduler = scheduler
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Ob.E {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Ob.E {
         let sink = SubscribeOnSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Switch.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Switch.swift
index 2da100053ebd2a9b030aab41dfa3f6c5cf369049..204a3b0775bae7b1575faf470ff589324ebcf991 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Switch.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Switch.swift
@@ -25,7 +25,7 @@ extension ObservableType {
     }
 }
 
-extension ObservableType where E : ObservableConvertibleType {
+extension ObservableType where E: ObservableConvertibleType {
 
     /**
      Transforms an observable sequence of observable sequences into an observable sequence
@@ -43,25 +43,24 @@ extension ObservableType where E : ObservableConvertibleType {
     }
 }
 
-fileprivate class SwitchSink<SourceType, S: ObservableConvertibleType, O: ObserverType>
-    : Sink<O>
-    , ObserverType where S.E == O.E {
+private class SwitchSink<SourceType, S: ObservableConvertibleType, O: ObserverType>
+    : Sink<O>, ObserverType where S.E == O.E {
     typealias E = SourceType
 
     fileprivate let _subscriptions: SingleAssignmentDisposable = SingleAssignmentDisposable()
     fileprivate let _innerSubscription: SerialDisposable = SerialDisposable()
 
     let _lock = RecursiveLock()
-    
+
     // state
     fileprivate var _stopped = false
     fileprivate var _latest = 0
     fileprivate var _hasLatest = false
-    
+
     override init(observer: O, cancel: Cancelable) {
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run(_ source: Observable<SourceType>) -> Disposable {
         let subscription = source.subscribe(self)
         _subscriptions.setDisposable(subscription)
@@ -80,8 +79,7 @@ fileprivate class SwitchSink<SourceType, S: ObservableConvertibleType, O: Observ
                 _hasLatest = true
                 _latest = _latest &+ 1
                 return (_latest, observable)
-            }
-            catch let error {
+            } catch let error {
                 forwardOn(.error(error))
                 dispose()
             }
@@ -96,7 +94,7 @@ fileprivate class SwitchSink<SourceType, S: ObservableConvertibleType, O: Observ
             if let (latest, observable) = nextElementArrived(element: element) {
                 let d = SingleAssignmentDisposable()
                 _innerSubscription.disposable = d
-                   
+
                 let observer = SwitchSinkIter(parent: self, id: latest, _self: d)
                 let disposable = observable.subscribe(observer)
                 d.setDisposable(disposable)
@@ -108,9 +106,9 @@ fileprivate class SwitchSink<SourceType, S: ObservableConvertibleType, O: Observ
         case .completed:
             _lock.lock(); defer { _lock.unlock() }
             _stopped = true
-            
+
             _subscriptions.dispose()
-            
+
             if !_hasLatest {
                 forwardOn(.completed)
                 dispose()
@@ -119,13 +117,11 @@ fileprivate class SwitchSink<SourceType, S: ObservableConvertibleType, O: Observ
     }
 }
 
-final fileprivate class SwitchSinkIter<SourceType, S: ObservableConvertibleType, O: ObserverType>
-    : ObserverType
-    , LockOwnerType
-    , SynchronizedOnType where S.E == O.E {
+final private class SwitchSinkIter<SourceType, S: ObservableConvertibleType, O: ObserverType>
+    : ObserverType, LockOwnerType, SynchronizedOnType where S.E == O.E {
     typealias E = S.E
     typealias Parent = SwitchSink<SourceType, S, O>
-    
+
     fileprivate let _parent: Parent
     fileprivate let _id: Int
     fileprivate let _self: Disposable
@@ -139,7 +135,7 @@ final fileprivate class SwitchSinkIter<SourceType, S: ObservableConvertibleType,
         _id = id
         self._self = _self
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -150,11 +146,11 @@ final fileprivate class SwitchSinkIter<SourceType, S: ObservableConvertibleType,
         case .error, .completed:
             _self.dispose()
         }
-        
+
         if _parent._latest != _id {
             return
         }
-       
+
         switch event {
         case .next:
             _parent.forwardOn(event)
@@ -173,7 +169,7 @@ final fileprivate class SwitchSinkIter<SourceType, S: ObservableConvertibleType,
 
 // MARK: Specializations
 
-final fileprivate class SwitchIdentitySink<S: ObservableConvertibleType, O: ObserverType> : SwitchSink<S, S, O> where O.E == S.E {
+final private class SwitchIdentitySink<S: ObservableConvertibleType, O: ObserverType> : SwitchSink<S, S, O> where O.E == S.E {
     override init(observer: O, cancel: Cancelable) {
         super.init(observer: observer, cancel: cancel)
     }
@@ -183,7 +179,7 @@ final fileprivate class SwitchIdentitySink<S: ObservableConvertibleType, O: Obse
     }
 }
 
-final fileprivate class MapSwitchSink<SourceType, S: ObservableConvertibleType, O: ObserverType> : SwitchSink<SourceType, S, O> where O.E == S.E {
+final private class MapSwitchSink<SourceType, S: ObservableConvertibleType, O: ObserverType> : SwitchSink<SourceType, S, O> where O.E == S.E {
     typealias Selector = (SourceType) throws -> S
 
     fileprivate let _selector: Selector
@@ -200,21 +196,21 @@ final fileprivate class MapSwitchSink<SourceType, S: ObservableConvertibleType,
 
 // MARK: Producers
 
-final fileprivate class Switch<S: ObservableConvertibleType> : Producer<S.E> {
+final private class Switch<S: ObservableConvertibleType> : Producer<S.E> {
     fileprivate let _source: Observable<S>
-    
+
     init(source: Observable<S>) {
         _source = source
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == S.E {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == S.E {
         let sink = SwitchIdentitySink<S, O>(observer: observer, cancel: cancel)
         let subscription = sink.run(_source)
         return (sink: sink, subscription: subscription)
     }
 }
 
-final fileprivate class FlatMapLatest<SourceType, S: ObservableConvertibleType> : Producer<S.E> {
+final private class FlatMapLatest<SourceType, S: ObservableConvertibleType> : Producer<S.E> {
     typealias Selector = (SourceType) throws -> S
 
     fileprivate let _source: Observable<SourceType>
@@ -225,7 +221,7 @@ final fileprivate class FlatMapLatest<SourceType, S: ObservableConvertibleType>
         _selector = selector
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == S.E {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == S.E {
         let sink = MapSwitchSink<SourceType, S, O>(selector: _selector, observer: observer, cancel: cancel)
         let subscription = sink.run(_source)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SwitchIfEmpty.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SwitchIfEmpty.swift
index 0b10dc614a10815dd7045688e2fc1e5b227e2a55..9ee3b30ee56776b932dea206da4dc81f647d45f6 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SwitchIfEmpty.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SwitchIfEmpty.swift
@@ -20,44 +20,43 @@ extension ObservableType {
     }
 }
 
-final fileprivate class SwitchIfEmpty<Element>: Producer<Element> {
-    
+final private class SwitchIfEmpty<Element>: Producer<Element> {
+
     private let _source: Observable<E>
     private let _ifEmpty: Observable<E>
-    
+
     init(source: Observable<E>, ifEmpty: Observable<E>) {
         _source = source
         _ifEmpty = ifEmpty
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = SwitchIfEmptySink(ifEmpty: _ifEmpty,
                                      observer: observer,
                                      cancel: cancel)
         let subscription = sink.run(_source.asObservable())
-        
+
         return (sink: sink, subscription: subscription)
     }
 }
 
-final fileprivate class SwitchIfEmptySink<O: ObserverType>: Sink<O>
-    , ObserverType {
+final private class SwitchIfEmptySink<O: ObserverType>: Sink<O>, ObserverType {
     typealias E = O.E
-    
+
     private let _ifEmpty: Observable<E>
     private var _isEmpty = true
     private let _ifEmptySubscription = SingleAssignmentDisposable()
-    
+
     init(ifEmpty: Observable<E>, observer: O, cancel: Cancelable) {
         _ifEmpty = ifEmpty
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run(_ source: Observable<O.E>) -> Disposable {
         let subscription = source.subscribe(self)
         return Disposables.create(subscription, _ifEmptySubscription)
     }
-    
+
     func on(_ event: Event<E>) {
         switch event {
         case .next:
@@ -78,17 +77,17 @@ final fileprivate class SwitchIfEmptySink<O: ObserverType>: Sink<O>
     }
 }
 
-final fileprivate class SwitchIfEmptySinkIter<O: ObserverType>
+final private class SwitchIfEmptySinkIter<O: ObserverType>
     : ObserverType {
     typealias E = O.E
     typealias Parent = SwitchIfEmptySink<O>
-    
+
     private let _parent: Parent
 
     init(parent: Parent) {
         _parent = parent
     }
-    
+
     func on(_ event: Event<E>) {
         switch event {
         case .next:
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Take.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Take.swift
index 661f8582d62f73e746bd2b24ac2cf702e8ffe7b5..4c1e00f7476590cad870ee7507266934fd9b83b2 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Take.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Take.swift
@@ -20,8 +20,7 @@ extension ObservableType {
         -> Observable<E> {
         if count == 0 {
             return Observable.empty()
-        }
-        else {
+        } else {
             return TakeCount(source: asObservable(), count: count)
         }
     }
@@ -46,29 +45,29 @@ extension ObservableType {
 
 // count version
 
-final fileprivate class TakeCountSink<O: ObserverType> : Sink<O>, ObserverType {
+final private class TakeCountSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias E = O.E
     typealias Parent = TakeCount<E>
-    
+
     private let _parent: Parent
-    
+
     private var _remaining: Int
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _remaining = parent._count
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<E>) {
         switch event {
         case .next(let value):
-            
+
             if _remaining > 0 {
                 _remaining -= 1
-                
+
                 forwardOn(.next(value))
-            
+
                 if _remaining == 0 {
                     forwardOn(.completed)
                     dispose()
@@ -82,13 +81,13 @@ final fileprivate class TakeCountSink<O: ObserverType> : Sink<O>, ObserverType {
             dispose()
         }
     }
-    
+
 }
 
-final fileprivate class TakeCount<Element>: Producer<Element> {
+final private class TakeCount<Element>: Producer<Element> {
     fileprivate let _source: Observable<Element>
     fileprivate let _count: Int
-    
+
     init(source: Observable<Element>, count: Int) {
         if count < 0 {
             rxFatalError("count can't be negative")
@@ -96,8 +95,8 @@ final fileprivate class TakeCount<Element>: Producer<Element> {
         _source = source
         _count = count
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = TakeCountSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
@@ -106,23 +105,20 @@ final fileprivate class TakeCount<Element>: Producer<Element> {
 
 // time version
 
-final fileprivate class TakeTimeSink<ElementType, O: ObserverType>
-    : Sink<O>
-    , LockOwnerType
-    , ObserverType
-    , SynchronizedOnType where O.E == ElementType {
+final private class TakeTimeSink<ElementType, O: ObserverType>
+    : Sink<O>, LockOwnerType, ObserverType, SynchronizedOnType where O.E == ElementType {
     typealias Parent = TakeTime<ElementType>
     typealias E = ElementType
 
     fileprivate let _parent: Parent
-    
+
     let _lock = RecursiveLock()
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -139,40 +135,40 @@ final fileprivate class TakeTimeSink<ElementType, O: ObserverType>
             dispose()
         }
     }
-    
+
     func tick() {
         _lock.lock(); defer { _lock.unlock() }
 
         forwardOn(.completed)
         dispose()
     }
-    
+
     func run() -> Disposable {
         let disposeTimer = _parent._scheduler.scheduleRelative((), dueTime: _parent._duration) { _ in
             self.tick()
             return Disposables.create()
         }
-        
+
         let disposeSubscription = _parent._source.subscribe(self)
-        
+
         return Disposables.create(disposeTimer, disposeSubscription)
     }
 }
 
-final fileprivate class TakeTime<Element> : Producer<Element> {
+final private class TakeTime<Element> : Producer<Element> {
     typealias TimeInterval = RxTimeInterval
-    
+
     fileprivate let _source: Observable<Element>
     fileprivate let _duration: TimeInterval
     fileprivate let _scheduler: SchedulerType
-    
+
     init(source: Observable<Element>, duration: TimeInterval, scheduler: SchedulerType) {
         _source = source
         _scheduler = scheduler
         _duration = duration
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = TakeTimeSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeLast.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeLast.swift
index 7bf1664bfdfd1ea35c456df33d3ccfd67154e2ae..4da8bb6eedff4cda8999ca52b050791955331548 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeLast.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeLast.swift
@@ -24,26 +24,26 @@ extension ObservableType {
     }
 }
 
-final fileprivate class TakeLastSink<O: ObserverType> : Sink<O>, ObserverType {
+final private class TakeLastSink<O: ObserverType> : Sink<O>, ObserverType {
     typealias E = O.E
     typealias Parent = TakeLast<E>
-    
+
     private let _parent: Parent
-    
+
     private var _elements: Queue<E>
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _elements = Queue<E>(capacity: parent._count + 1)
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<E>) {
         switch event {
         case .next(let value):
             _elements.enqueue(value)
             if _elements.count > self._parent._count {
-                let _ = _elements.dequeue()
+                _ = _elements.dequeue()
             }
         case .error:
             forwardOn(event)
@@ -58,10 +58,10 @@ final fileprivate class TakeLastSink<O: ObserverType> : Sink<O>, ObserverType {
     }
 }
 
-final fileprivate class TakeLast<Element>: Producer<Element> {
+final private class TakeLast<Element>: Producer<Element> {
     fileprivate let _source: Observable<Element>
     fileprivate let _count: Int
-    
+
     init(source: Observable<Element>, count: Int) {
         if count < 0 {
             rxFatalError("count can't be negative")
@@ -69,8 +69,8 @@ final fileprivate class TakeLast<Element>: Producer<Element> {
         _source = source
         _count = count
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = TakeLastSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeUntil.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeUntil.swift
index f2e5f98b01a2f05cf2b4a3d27c2fc4f128a8bff4..e53c709591e673bf803ef61355531b3e1eb76ee9 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeUntil.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeUntil.swift
@@ -22,28 +22,26 @@ extension ObservableType {
     }
 }
 
-final fileprivate class TakeUntilSinkOther<Other, O: ObserverType>
-    : ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+final private class TakeUntilSinkOther<Other, O: ObserverType>
+    : ObserverType, LockOwnerType, SynchronizedOnType {
     typealias Parent = TakeUntilSink<Other, O>
     typealias E = Other
-    
+
     fileprivate let _parent: Parent
 
     var _lock: RecursiveLock {
         return _parent._lock
     }
-    
+
     fileprivate let _subscription = SingleAssignmentDisposable()
-    
+
     init(parent: Parent) {
         _parent = parent
 #if TRACE_RESOURCES
-        let _ = Resources.incrementTotal()
+        _ = Resources.incrementTotal()
 #endif
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -60,32 +58,28 @@ final fileprivate class TakeUntilSinkOther<Other, O: ObserverType>
             _subscription.dispose()
         }
     }
-    
+
 #if TRACE_RESOURCES
     deinit {
-        let _ = Resources.decrementTotal()
+        _ = Resources.decrementTotal()
     }
 #endif
 }
 
-final fileprivate class TakeUntilSink<Other, O: ObserverType>
-    : Sink<O>
-    , LockOwnerType
-    , ObserverType
-    , SynchronizedOnType {
+final private class TakeUntilSink<Other, O: ObserverType>
+    : Sink<O>, LockOwnerType, ObserverType, SynchronizedOnType {
     typealias E = O.E
     typealias Parent = TakeUntil<E, Other>
-    
+
     fileprivate let _parent: Parent
- 
+
     let _lock = RecursiveLock()
-    
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -102,28 +96,28 @@ final fileprivate class TakeUntilSink<Other, O: ObserverType>
             dispose()
         }
     }
-    
+
     func run() -> Disposable {
         let otherObserver = TakeUntilSinkOther(parent: self)
         let otherSubscription = _parent._other.subscribe(otherObserver)
         otherObserver._subscription.setDisposable(otherSubscription)
         let sourceSubscription = _parent._source.subscribe(self)
-        
+
         return Disposables.create(sourceSubscription, otherObserver._subscription)
     }
 }
 
-final fileprivate class TakeUntil<Element, Other>: Producer<Element> {
-    
+final private class TakeUntil<Element, Other>: Producer<Element> {
+
     fileprivate let _source: Observable<Element>
     fileprivate let _other: Observable<Other>
-    
+
     init(source: Observable<Element>, other: Observable<Other>) {
         _source = source
         _other = other
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = TakeUntilSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeWhile.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeWhile.swift
index 2b7b55101a4f3c72b13b5d23a9d1168236feb2dc..5318f2c56665a194d1f1dd54b855924b89d739c3 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeWhile.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeWhile.swift
@@ -22,9 +22,8 @@ extension ObservableType {
     }
 }
 
-final fileprivate class TakeWhileSink<O: ObserverType>
-    : Sink<O>
-    , ObserverType {
+final private class TakeWhileSink<O: ObserverType>
+    : Sink<O>, ObserverType {
     typealias Element = O.E
     typealias Parent = TakeWhile<Element>
 
@@ -36,14 +35,14 @@ final fileprivate class TakeWhileSink<O: ObserverType>
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<Element>) {
         switch event {
         case .next(let value):
             if !_running {
                 return
             }
-            
+
             do {
                 _running = try _parent._predicate(value)
             } catch let e {
@@ -51,7 +50,7 @@ final fileprivate class TakeWhileSink<O: ObserverType>
                 dispose()
                 return
             }
-            
+
             if _running {
                 forwardOn(.next(value))
             } else {
@@ -63,10 +62,10 @@ final fileprivate class TakeWhileSink<O: ObserverType>
             dispose()
         }
     }
-    
+
 }
 
-final fileprivate class TakeWhile<Element>: Producer<Element> {
+final private class TakeWhile<Element>: Producer<Element> {
     typealias Predicate = (Element) throws -> Bool
 
     fileprivate let _source: Observable<Element>
@@ -77,7 +76,7 @@ final fileprivate class TakeWhile<Element>: Producer<Element> {
         _predicate = predicate
     }
 
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = TakeWhileSink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Throttle.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Throttle.swift
index 0c4ca7466ff885a24212f15793866b68870b3e8d..6a02ff41a54842cc209a88cedc1ec5950bcc940f 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Throttle.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Throttle.swift
@@ -28,34 +28,31 @@ extension ObservableType {
     }
 }
 
-final fileprivate class ThrottleSink<O: ObserverType>
-    : Sink<O>
-    , ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+final private class ThrottleSink<O: ObserverType>
+    : Sink<O>, ObserverType, LockOwnerType, SynchronizedOnType {
     typealias Element = O.E
     typealias ParentType = Throttle<Element>
-    
+
     private let _parent: ParentType
-    
+
     let _lock = RecursiveLock()
-    
+
     // state
-    private var _lastUnsentElement: Element? = nil
-    private var _lastSentTime: Date? = nil
+    private var _lastUnsentElement: Element?
+    private var _lastSentTime: Date?
     private var _completed: Bool = false
 
     let cancellable = SerialDisposable()
-    
+
     init(parent: ParentType, observer: O, cancel: Cancelable) {
         _parent = parent
-        
+
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         let subscription = _parent._source.subscribe(self)
-        
+
         return Disposables.create(subscription, cancellable)
     }
 
@@ -72,8 +69,7 @@ final fileprivate class ThrottleSink<O: ObserverType>
 
             if let lastSendingTime = _lastSentTime {
                 timeIntervalSinceLast = now.timeIntervalSince(lastSendingTime)
-            }
-            else {
+            } else {
                 timeIntervalSinceLast = _parent._dueTime
             }
 
@@ -89,7 +85,7 @@ final fileprivate class ThrottleSink<O: ObserverType>
             }
 
             let isThereAlreadyInFlightRequest = _lastUnsentElement != nil
-            
+
             _lastUnsentElement = element
 
             if isThereAlreadyInFlightRequest {
@@ -110,8 +106,7 @@ final fileprivate class ThrottleSink<O: ObserverType>
         case .completed:
             if let _ = _lastUnsentElement {
                 _completed = true
-            }
-            else {
+            } else {
                 forwardOn(.completed)
                 dispose()
             }
@@ -124,7 +119,7 @@ final fileprivate class ThrottleSink<O: ObserverType>
         // in case element processing takes a while, this should give some more room
         _lastSentTime = _parent._scheduler.now
     }
-    
+
     func propagate(_: Int) -> Disposable {
         _lock.lock(); defer { _lock.unlock() } // {
             if let lastUnsentElement = _lastUnsentElement {
@@ -140,8 +135,8 @@ final fileprivate class ThrottleSink<O: ObserverType>
     }
 }
 
-final fileprivate class Throttle<Element> : Producer<Element> {
-    
+final private class Throttle<Element> : Producer<Element> {
+
     fileprivate let _source: Observable<Element>
     fileprivate let _dueTime: RxTimeInterval
     fileprivate let _latest: Bool
@@ -153,11 +148,11 @@ final fileprivate class Throttle<Element> : Producer<Element> {
         _latest = latest
         _scheduler = scheduler
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = ThrottleSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timeout.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timeout.swift
index 7008de828619341e14cfc33da88e5cc355ae3d78..16b79ff4be8375388fb480829a2a2eeb8e6ff91b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timeout.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timeout.swift
@@ -38,33 +38,33 @@ extension ObservableType {
     }
 }
 
-final fileprivate class TimeoutSink<O: ObserverType>: Sink<O>, LockOwnerType, ObserverType {
+final private class TimeoutSink<O: ObserverType>: Sink<O>, LockOwnerType, ObserverType {
     typealias E = O.E
     typealias Parent = Timeout<E>
-    
+
     private let _parent: Parent
-    
+
     let _lock = RecursiveLock()
 
     private let _timerD = SerialDisposable()
     private let _subscription = SerialDisposable()
-    
+
     private var _id = 0
     private var _switched = false
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         let original = SingleAssignmentDisposable()
         _subscription.disposable = original
-        
+
         _createTimeoutTimer()
-        
+
         original.setDisposable(_parent._source.subscribe(self))
-        
+
         return Disposables.create(_subscription, _timerD)
     }
 
@@ -72,56 +72,56 @@ final fileprivate class TimeoutSink<O: ObserverType>: Sink<O>, LockOwnerType, Ob
         switch event {
         case .next:
             var onNextWins = false
-            
-            _lock.performLocked() {
+
+            _lock.performLocked {
                 onNextWins = !self._switched
                 if onNextWins {
                     self._id = self._id &+ 1
                 }
             }
-            
+
             if onNextWins {
                 forwardOn(event)
                 self._createTimeoutTimer()
             }
         case .error, .completed:
             var onEventWins = false
-            
-            _lock.performLocked() {
+
+            _lock.performLocked {
                 onEventWins = !self._switched
                 if onEventWins {
                     self._id = self._id &+ 1
                 }
             }
-            
+
             if onEventWins {
                 forwardOn(event)
                 self.dispose()
             }
         }
     }
-    
+
     private func _createTimeoutTimer() {
         if _timerD.isDisposed {
             return
         }
-        
+
         let nextTimer = SingleAssignmentDisposable()
         _timerD.disposable = nextTimer
-        
+
         let disposeSchedule = _parent._scheduler.scheduleRelative(_id, dueTime: _parent._dueTime) { state in
-            
+
             var timerWins = false
-            
-            self._lock.performLocked() {
+
+            self._lock.performLocked {
                 self._switched = (state == self._id)
                 timerWins = self._switched
             }
-            
+
             if timerWins {
                 self._subscription.disposable = self._parent._other.subscribe(self.forwarder())
             }
-            
+
             return Disposables.create()
         }
 
@@ -129,22 +129,21 @@ final fileprivate class TimeoutSink<O: ObserverType>: Sink<O>, LockOwnerType, Ob
     }
 }
 
+final private class Timeout<Element> : Producer<Element> {
 
-final fileprivate class Timeout<Element> : Producer<Element> {
-    
     fileprivate let _source: Observable<Element>
     fileprivate let _dueTime: RxTimeInterval
     fileprivate let _other: Observable<Element>
     fileprivate let _scheduler: SchedulerType
-    
+
     init(source: Observable<Element>, dueTime: RxTimeInterval, other: Observable<Element>, scheduler: SchedulerType) {
         _source = source
         _dueTime = dueTime
         _other = other
         _scheduler = scheduler
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element {
         let sink = TimeoutSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timer.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timer.swift
index dec69e12d00650cf978f3c1a20228633fc0063cd..77a0b88137ecb07c09ce9846b25fd0889ac4130e 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timer.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timer.swift
@@ -6,7 +6,7 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-extension ObservableType where E : RxAbstractInteger {
+extension ObservableType where E: RxAbstractInteger {
     /**
      Returns an observable sequence that produces a value after each period, using the specified scheduler to run timers and to send out observer messages.
 
@@ -46,16 +46,16 @@ extension ObservableType where E: RxAbstractInteger {
     }
 }
 
-final fileprivate class TimerSink<O: ObserverType> : Sink<O> where O.E : RxAbstractInteger  {
+final private class TimerSink<O: ObserverType> : Sink<O> where O.E: RxAbstractInteger {
     typealias Parent = Timer<O.E>
-    
+
     private let _parent: Parent
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         return _parent._scheduler.schedulePeriodic(0 as O.E, startAfter: _parent._dueTime, period: _parent._period!) { state in
             self.forwardOn(.next(state))
@@ -64,18 +64,18 @@ final fileprivate class TimerSink<O: ObserverType> : Sink<O> where O.E : RxAbstr
     }
 }
 
-final fileprivate class TimerOneOffSink<O: ObserverType> : Sink<O> where O.E : RxAbstractInteger {
+final private class TimerOneOffSink<O: ObserverType> : Sink<O> where O.E: RxAbstractInteger {
     typealias Parent = Timer<O.E>
-    
+
     private let _parent: Parent
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
-        return _parent._scheduler.scheduleRelative(self, dueTime: _parent._dueTime) { (`self`) -> Disposable in
+        return _parent._scheduler.scheduleRelative(self, dueTime: _parent._dueTime) { (_f`) -> Disposable in
             self.forwardOn(.next(0))
             self.forwardOn(.completed)
             self.dispose()
@@ -85,24 +85,23 @@ final fileprivate class TimerOneOffSink<O: ObserverType> : Sink<O> where O.E : R
     }
 }
 
-final fileprivate class Timer<E: RxAbstractInteger>: Producer<E> {
+final private class Timer<E: RxAbstractInteger>: Producer<E> {
     fileprivate let _scheduler: SchedulerType
     fileprivate let _dueTime: RxTimeInterval
     fileprivate let _period: RxTimeInterval?
-    
+
     init(dueTime: RxTimeInterval, period: RxTimeInterval?, scheduler: SchedulerType) {
         _scheduler = scheduler
         _dueTime = dueTime
         _period = period
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
         if let _ = _period {
             let sink = TimerSink(parent: self, observer: observer, cancel: cancel)
             let subscription = sink.run()
             return (sink: sink, subscription: subscription)
-        }
-        else {
+        } else {
             let sink = TimerOneOffSink(parent: self, observer: observer, cancel: cancel)
             let subscription = sink.run()
             return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ToArray.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ToArray.swift
index 93fcb80e11a226a75a09fa10ed35818762ca47b1..d760f2197f618af994b566ea86c35d9fcbd3470f 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ToArray.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ToArray.swift
@@ -6,7 +6,6 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-
 extension ObservableType {
 
     /**
@@ -24,18 +23,18 @@ extension ObservableType {
     }
 }
 
-final fileprivate class ToArraySink<SourceType, O: ObserverType> : Sink<O>, ObserverType where O.E == [SourceType] {
+final private class ToArraySink<SourceType, O: ObserverType> : Sink<O>, ObserverType where O.E == [SourceType] {
     typealias Parent = ToArray<SourceType>
-    
+
     let _parent: Parent
     var _list = Array<SourceType>()
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
-        
+
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<SourceType>) {
         switch event {
         case .next(let value):
@@ -51,13 +50,13 @@ final fileprivate class ToArraySink<SourceType, O: ObserverType> : Sink<O>, Obse
     }
 }
 
-final fileprivate class ToArray<SourceType> : Producer<[SourceType]> {
+final private class ToArray<SourceType> : Producer<[SourceType]> {
     let _source: Observable<SourceType>
 
     init(source: Observable<SourceType>) {
         _source = source
     }
-    
+
     override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == [SourceType] {
         let sink = ToArraySink(parent: self, observer: observer, cancel: cancel)
         let subscription = _source.subscribe(sink)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Using.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Using.swift
index 8ea832678bd8df2a72b8b46d4e94c3b42cb72b0d..a8213b92477c06fbeb5ef75c6a4ff90496cedfce 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Using.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Using.swift
@@ -21,25 +21,25 @@ extension ObservableType {
     }
 }
 
-final fileprivate class UsingSink<ResourceType: Disposable, O: ObserverType> : Sink<O>, ObserverType {
+final private class UsingSink<ResourceType: Disposable, O: ObserverType> : Sink<O>, ObserverType {
     typealias SourceType = O.E
     typealias Parent = Using<SourceType, ResourceType>
 
     private let _parent: Parent
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         var disposable = Disposables.create()
-        
+
         do {
             let resource = try _parent._resourceFactory()
             disposable = resource
             let source = try _parent._observableFactory(resource)
-            
+
             return Disposables.create(
                 source.subscribe(self),
                 disposable
@@ -51,7 +51,7 @@ final fileprivate class UsingSink<ResourceType: Disposable, O: ObserverType> : S
             )
         }
     }
-    
+
     func on(_ event: Event<SourceType>) {
         switch event {
         case let .next(value):
@@ -66,23 +66,22 @@ final fileprivate class UsingSink<ResourceType: Disposable, O: ObserverType> : S
     }
 }
 
-final fileprivate class Using<SourceType, ResourceType: Disposable>: Producer<SourceType> {
-    
+final private class Using<SourceType, ResourceType: Disposable>: Producer<SourceType> {
+
     typealias E = SourceType
-    
+
     typealias ResourceFactory = () throws -> ResourceType
     typealias ObservableFactory = (ResourceType) throws -> Observable<SourceType>
-    
+
     fileprivate let _resourceFactory: ResourceFactory
     fileprivate let _observableFactory: ObservableFactory
-    
-    
+
     init(resourceFactory: @escaping ResourceFactory, observableFactory: @escaping ObservableFactory) {
         _resourceFactory = resourceFactory
         _observableFactory = observableFactory
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E {
         let sink = UsingSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Window.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Window.swift
index c862dfba78a08bf785172f204f2bf04da0a2e0f1..0c6e7b2b242883d9577e05c3ca391a601c66fbd6 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Window.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Window.swift
@@ -24,48 +24,45 @@ extension ObservableType {
     }
 }
 
-final fileprivate class WindowTimeCountSink<Element, O: ObserverType>
-    : Sink<O>
-    , ObserverType
-    , LockOwnerType
-    , SynchronizedOnType where O.E == Observable<Element> {
+final private class WindowTimeCountSink<Element, O: ObserverType>
+    : Sink<O>, ObserverType, LockOwnerType, SynchronizedOnType where O.E == Observable<Element> {
     typealias Parent = WindowTimeCount<Element>
     typealias E = Element
-    
+
     private let _parent: Parent
-    
+
     let _lock = RecursiveLock()
-    
+
     private var _subject = PublishSubject<Element>()
     private var _count = 0
     private var _windowId = 0
-    
+
     private let _timerD = SerialDisposable()
     private let _refCountDisposable: RefCountDisposable
     private let _groupDisposable = CompositeDisposable()
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
-        
-        let _ = _groupDisposable.insert(_timerD)
-        
+
+        _ = _groupDisposable.insert(_timerD)
+
         _refCountDisposable = RefCountDisposable(disposable: _groupDisposable)
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
-        
+
         forwardOn(.next(AddRef(source: _subject, refCount: _refCountDisposable).asObservable()))
         createTimer(_windowId)
-        
-        let _ = _groupDisposable.insert(_parent._source.subscribe(self))
+
+        _ = _groupDisposable.insert(_parent._source.subscribe(self))
         return _refCountDisposable
     }
-    
+
     func startNewWindowAndCompleteCurrentOne() {
         _subject.on(.completed)
         _subject = PublishSubject<Element>()
-        
+
         forwardOn(.next(AddRef(source: _subject, refCount: _refCountDisposable).asObservable()))
     }
 
@@ -76,18 +73,18 @@ final fileprivate class WindowTimeCountSink<Element, O: ObserverType>
     func _synchronized_on(_ event: Event<E>) {
         var newWindow = false
         var newId = 0
-        
+
         switch event {
         case .next(let element):
             _subject.on(.next(element))
-            
+
             do {
-                let _ = try incrementChecked(&_count)
+                _ = try incrementChecked(&_count)
             } catch (let e) {
                 _subject.on(.error(e as Swift.Error))
                 dispose()
             }
-            
+
             if (_count == _parent._count) {
                 newWindow = true
                 _count = 0
@@ -95,7 +92,7 @@ final fileprivate class WindowTimeCountSink<Element, O: ObserverType>
                 newId = _windowId
                 self.startNewWindowAndCompleteCurrentOne()
             }
-            
+
         case .error(let error):
             _subject.on(.error(error))
             forwardOn(.error(error))
@@ -110,12 +107,12 @@ final fileprivate class WindowTimeCountSink<Element, O: ObserverType>
             createTimer(newId)
         }
     }
-    
+
     func createTimer(_ windowId: Int) {
         if _timerD.isDisposed {
             return
         }
-        
+
         if _windowId != windowId {
             return
         }
@@ -125,22 +122,22 @@ final fileprivate class WindowTimeCountSink<Element, O: ObserverType>
         _timerD.disposable = nextTimer
 
         let scheduledRelative = _parent._scheduler.scheduleRelative(windowId, dueTime: _parent._timeSpan) { previousWindowId in
-            
+
             var newId = 0
-            
+
             self._lock.performLocked {
                 if previousWindowId != self._windowId {
                     return
                 }
-                
+
                 self._count = 0
                 self._windowId = self._windowId &+ 1
                 newId = self._windowId
                 self.startNewWindowAndCompleteCurrentOne()
             }
-            
+
             self.createTimer(newId)
-            
+
             return Disposables.create()
         }
 
@@ -148,21 +145,21 @@ final fileprivate class WindowTimeCountSink<Element, O: ObserverType>
     }
 }
 
-final fileprivate class WindowTimeCount<Element> : Producer<Observable<Element>> {
-    
+final private class WindowTimeCount<Element> : Producer<Observable<Element>> {
+
     fileprivate let _timeSpan: RxTimeInterval
     fileprivate let _count: Int
     fileprivate let _scheduler: SchedulerType
     fileprivate let _source: Observable<Element>
-    
+
     init(source: Observable<Element>, timeSpan: RxTimeInterval, count: Int, scheduler: SchedulerType) {
         _source = source
         _timeSpan = timeSpan
         _count = count
         _scheduler = scheduler
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Observable<Element> {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Observable<Element> {
         let sink = WindowTimeCountSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/WithLatestFrom.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/WithLatestFrom.swift
index bd22e2f01b2a755d2b45a75d1b7c90482eb6403b..b938aa1d6e16af8c4aa7d09b56da15b783aa0c4d 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/WithLatestFrom.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/WithLatestFrom.swift
@@ -34,30 +34,27 @@ extension ObservableType {
     }
 }
 
-final fileprivate class WithLatestFromSink<FirstType, SecondType, O: ObserverType>
-    : Sink<O>
-    , ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+final private class WithLatestFromSink<FirstType, SecondType, O: ObserverType>
+    : Sink<O>, ObserverType, LockOwnerType, SynchronizedOnType {
     typealias ResultType = O.E
     typealias Parent = WithLatestFrom<FirstType, SecondType, ResultType>
     typealias E = FirstType
-    
+
     fileprivate let _parent: Parent
-    
+
     var _lock = RecursiveLock()
     fileprivate var _latest: SecondType?
 
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
-        
+
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func run() -> Disposable {
         let sndSubscription = SingleAssignmentDisposable()
         let sndO = WithLatestFromSecond(parent: self, disposable: sndSubscription)
-        
+
         sndSubscription.setDisposable(_parent._second.subscribe(sndO))
         let fstSubscription = _parent._first.subscribe(self)
 
@@ -74,7 +71,7 @@ final fileprivate class WithLatestFromSink<FirstType, SecondType, O: ObserverTyp
             guard let latest = _latest else { return }
             do {
                 let res = try _parent._resultSelector(value, latest)
-                
+
                 forwardOn(.next(res))
             } catch let e {
                 forwardOn(.error(e))
@@ -90,15 +87,13 @@ final fileprivate class WithLatestFromSink<FirstType, SecondType, O: ObserverTyp
     }
 }
 
-final fileprivate class WithLatestFromSecond<FirstType, SecondType, O: ObserverType>
-    : ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
-    
+final private class WithLatestFromSecond<FirstType, SecondType, O: ObserverType>
+    : ObserverType, LockOwnerType, SynchronizedOnType {
+
     typealias ResultType = O.E
     typealias Parent = WithLatestFromSink<FirstType, SecondType, O>
     typealias E = SecondType
-    
+
     private let _parent: Parent
     private let _disposable: Disposable
 
@@ -110,7 +105,7 @@ final fileprivate class WithLatestFromSecond<FirstType, SecondType, O: ObserverT
         _parent = parent
         _disposable = disposable
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -128,9 +123,9 @@ final fileprivate class WithLatestFromSecond<FirstType, SecondType, O: ObserverT
     }
 }
 
-final fileprivate class WithLatestFrom<FirstType, SecondType, ResultType>: Producer<ResultType> {
+final private class WithLatestFrom<FirstType, SecondType, ResultType>: Producer<ResultType> {
     typealias ResultSelector = (FirstType, SecondType) throws -> ResultType
-    
+
     fileprivate let _first: Observable<FirstType>
     fileprivate let _second: Observable<SecondType>
     fileprivate let _resultSelector: ResultSelector
@@ -140,8 +135,8 @@ final fileprivate class WithLatestFrom<FirstType, SecondType, ResultType>: Produ
         _second = second
         _resultSelector = resultSelector
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == ResultType {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == ResultType {
         let sink = WithLatestFromSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+Collection.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+Collection.swift
index 1a871c1ee0fede360b55ecf97105be67e9d673f1..fd465e73668628d997415a91334e3baac8c855d5 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+Collection.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+Collection.swift
@@ -31,50 +31,50 @@ extension ObservableType {
         where C.Iterator.Element: ObservableType, C.Iterator.Element.E == E {
         return ZipCollectionType(sources: collection, resultSelector: { $0 })
     }
-    
+
 }
 
-final fileprivate class ZipCollectionTypeSink<C: Collection, O: ObserverType>
-    : Sink<O> where C.Iterator.Element : ObservableConvertibleType {
+final private class ZipCollectionTypeSink<C: Collection, O: ObserverType>
+    : Sink<O> where C.Iterator.Element: ObservableConvertibleType {
     typealias R = O.E
     typealias Parent = ZipCollectionType<C, R>
     typealias SourceElement = C.Iterator.Element.E
-    
+
     private let _parent: Parent
-    
+
     private let _lock = RecursiveLock()
-    
+
     // state
     private var _numberOfValues = 0
     private var _values: [Queue<SourceElement>]
     private var _isDone: [Bool]
     private var _numberOfDone = 0
     private var _subscriptions: [SingleAssignmentDisposable]
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         _parent = parent
         _values = [Queue<SourceElement>](repeating: Queue(capacity: 4), count: parent.count)
         _isDone = [Bool](repeating: false, count: parent.count)
         _subscriptions = Array<SingleAssignmentDisposable>()
         _subscriptions.reserveCapacity(parent.count)
-        
+
         for _ in 0 ..< parent.count {
             _subscriptions.append(SingleAssignmentDisposable())
         }
-        
+
         super.init(observer: observer, cancel: cancel)
     }
-    
+
     func on(_ event: Event<SourceElement>, atIndex: Int) {
         _lock.lock(); defer { _lock.unlock() } // {
             switch event {
             case .next(let element):
                 _values[atIndex].enqueue(element)
-                
+
                 if _values[atIndex].count == 1 {
                     _numberOfValues += 1
                 }
-                
+
                 if _numberOfValues < _parent.count {
                     if _numberOfDone == _parent.count - 1 {
                         self.forwardOn(.completed)
@@ -82,29 +82,28 @@ final fileprivate class ZipCollectionTypeSink<C: Collection, O: ObserverType>
                     }
                     return
                 }
-                
+
                 do {
                     var arguments = [SourceElement]()
                     arguments.reserveCapacity(_parent.count)
-                    
+
                     // recalculate number of values
                     _numberOfValues = 0
-                    
+
                     for i in 0 ..< _values.count {
                         arguments.append(_values[i].dequeue()!)
                         if !_values[i].isEmpty {
                             _numberOfValues += 1
                         }
                     }
-                    
+
                     let result = try _parent.resultSelector(arguments)
                     self.forwardOn(.next(result))
-                }
-                catch let error {
+                } catch let error {
                     self.forwardOn(.error(error))
                     self.dispose()
                 }
-                
+
             case .error(let error):
                 self.forwardOn(.error(error))
                 self.dispose()
@@ -112,21 +111,20 @@ final fileprivate class ZipCollectionTypeSink<C: Collection, O: ObserverType>
                 if _isDone[atIndex] {
                     return
                 }
-                
+
                 _isDone[atIndex] = true
                 _numberOfDone += 1
-                
+
                 if _numberOfDone == _parent.count {
                     self.forwardOn(.completed)
                     self.dispose()
-                }
-                else {
+                } else {
                     _subscriptions[atIndex].dispose()
                 }
             }
         // }
     }
-    
+
     func run() -> Disposable {
         var j = 0
         for i in _parent.sources {
@@ -143,25 +141,25 @@ final fileprivate class ZipCollectionTypeSink<C: Collection, O: ObserverType>
         if _parent.sources.isEmpty {
             self.forwardOn(.completed)
         }
-        
+
         return Disposables.create(_subscriptions)
     }
 }
 
-final fileprivate class ZipCollectionType<C: Collection, R> : Producer<R> where C.Iterator.Element : ObservableConvertibleType {
+final private class ZipCollectionType<C: Collection, R> : Producer<R> where C.Iterator.Element: ObservableConvertibleType {
     typealias ResultSelector = ([C.Iterator.Element.E]) throws -> R
-    
+
     let sources: C
     let resultSelector: ResultSelector
     let count: Int
-    
+
     init(sources: C, resultSelector: @escaping ResultSelector) {
         self.sources = sources
         self.resultSelector = resultSelector
         self.count = Int(Int64(self.sources.count))
     }
-    
-    override func run<O : ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R {
+
+    override func run<O: ObserverType>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R {
         let sink = ZipCollectionTypeSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+arity.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+arity.swift
index 434543e7587d7d1427d097f1355a92886c50981c..945adc3af63536a03c036656c434e3302d630e2b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+arity.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+arity.swift
@@ -7,8 +7,6 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-
-
 // 2
 
 extension ObservableType {
@@ -117,8 +115,6 @@ final class Zip2<E1, E2, R> : Producer<R> {
     }
 }
 
-
-
 // 3
 
 extension ObservableType {
@@ -235,8 +231,6 @@ final class Zip3<E1, E2, E3, R> : Producer<R> {
     }
 }
 
-
-
 // 4
 
 extension ObservableType {
@@ -361,8 +355,6 @@ final class Zip4<E1, E2, E3, E4, R> : Producer<R> {
     }
 }
 
-
-
 // 5
 
 extension ObservableType {
@@ -495,8 +487,6 @@ final class Zip5<E1, E2, E3, E4, E5, R> : Producer<R> {
     }
 }
 
-
-
 // 6
 
 extension ObservableType {
@@ -637,8 +627,6 @@ final class Zip6<E1, E2, E3, E4, E5, E6, R> : Producer<R> {
     }
 }
 
-
-
 // 7
 
 extension ObservableType {
@@ -787,8 +775,6 @@ final class Zip7<E1, E2, E3, E4, E5, E6, E7, R> : Producer<R> {
     }
 }
 
-
-
 // 8
 
 extension ObservableType {
@@ -944,5 +930,3 @@ final class Zip8<E1, E2, E3, E4, E5, E6, E7, E8, R> : Producer<R> {
         return (sink: sink, subscription: subscription)
     }
 }
-
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip.swift
index a283bf2b23f01e632843de8e306b0e44a726376d..de65c27cfc871263ec09512cf2bb3f3b0cbeebfc 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip.swift
@@ -6,8 +6,7 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-protocol ZipSinkProtocol : class
-{
+protocol ZipSinkProtocol: class {
     func next(_ index: Int)
     func fail(_ error: Swift.Error)
     func done(_ index: Int)
@@ -15,52 +14,50 @@ protocol ZipSinkProtocol : class
 
 class ZipSink<O: ObserverType> : Sink<O>, ZipSinkProtocol {
     typealias Element = O.E
-    
+
     let _arity: Int
 
     let _lock = RecursiveLock()
 
     // state
     private var _isDone: [Bool]
-    
+
     init(arity: Int, observer: O, cancel: Cancelable) {
         _isDone = [Bool](repeating: false, count: arity)
         _arity = arity
-        
+
         super.init(observer: observer, cancel: cancel)
     }
 
     func getResult() throws -> Element {
         rxAbstractMethod()
     }
-    
+
     func hasElements(_ index: Int) -> Bool {
         rxAbstractMethod()
     }
-    
+
     func next(_ index: Int) {
         var hasValueAll = true
-        
+
         for i in 0 ..< _arity {
             if !hasElements(i) {
                 hasValueAll = false
                 break
             }
         }
-        
+
         if hasValueAll {
             do {
                 let result = try getResult()
                 self.forwardOn(.next(result))
-            }
-            catch let e {
+            } catch let e {
                 self.forwardOn(.error(e))
                 dispose()
             }
-        }
-        else {
+        } else {
             var allOthersDone = true
-            
+
             let arity = _isDone.count
             for i in 0 ..< arity {
                 if i != index && !_isDone[i] {
@@ -68,31 +65,31 @@ class ZipSink<O: ObserverType> : Sink<O>, ZipSinkProtocol {
                     break
                 }
             }
-            
+
             if allOthersDone {
                 forwardOn(.completed)
                 self.dispose()
             }
         }
     }
-    
+
     func fail(_ error: Swift.Error) {
         forwardOn(.error(error))
         dispose()
     }
-    
+
     func done(_ index: Int) {
         _isDone[index] = true
-        
+
         var allDone = true
-        
+
         for done in _isDone {
             if !done {
                 allDone = false
                 break
             }
         }
-        
+
         if allDone {
             forwardOn(.completed)
             dispose()
@@ -101,21 +98,19 @@ class ZipSink<O: ObserverType> : Sink<O>, ZipSinkProtocol {
 }
 
 final class ZipObserver<ElementType>
-    : ObserverType
-    , LockOwnerType
-    , SynchronizedOnType {
+    : ObserverType, LockOwnerType, SynchronizedOnType {
     typealias E = ElementType
-    typealias ValueSetter = (ElementType) -> ()
+    typealias ValueSetter = (ElementType) -> Void
 
     private var _parent: ZipSinkProtocol?
-    
+
     let _lock: RecursiveLock
-    
+
     // state
     private let _index: Int
     private let _this: Disposable
     private let _setNextValue: ValueSetter
-    
+
     init(lock: RecursiveLock, parent: ZipSinkProtocol, index: Int, setNextValue: @escaping ValueSetter, this: Disposable) {
         _lock = lock
         _parent = parent
@@ -123,7 +118,7 @@ final class ZipObserver<ElementType>
         _this = this
         _setNextValue = setNextValue
     }
-    
+
     func on(_ event: Event<E>) {
         synchronizedOn(event)
     }
@@ -131,15 +126,15 @@ final class ZipObserver<ElementType>
     func _synchronized_on(_ event: Event<E>) {
         if let _ = _parent {
             switch event {
-            case .next(_):
+            case .next:
                 break
-            case .error(_):
+            case .error:
                 _this.dispose()
             case .completed:
                 _this.dispose()
             }
         }
-        
+
         if let parent = _parent {
             switch event {
             case .next(let value):
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObserverType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObserverType.swift
index e3ed7aa886e1dff105402ba4359f2ce520b29d2a..5a9b84b2db84ef81a44603e8094c08185e5f1388 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObserverType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObserverType.swift
@@ -19,19 +19,19 @@ public protocol ObserverType {
 
 /// Convenience API extensions to provide alternate next, error, completed events
 extension ObserverType {
-    
+
     /// Convenience method equivalent to `on(.next(element: E))`
     ///
     /// - parameter element: Next element to send to observer(s)
     public func onNext(_ element: E) {
         on(.next(element))
     }
-    
+
     /// Convenience method equivalent to `on(.completed)`
     public func onCompleted() {
         on(.completed)
     }
-    
+
     /// Convenience method equivalent to `on(.error(Swift.Error))`
     /// - parameter error: Swift.Error to send to observer(s)
     public func onError(_ error: Swift.Error) {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/AnonymousObserver.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/AnonymousObserver.swift
index 54e83f548599ac3cc23ad88bfb08aa5ef7dbb4e9..8a54b7dcd1b3ec2af383686b2f01b082f4ed992e 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/AnonymousObserver.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/AnonymousObserver.swift
@@ -8,14 +8,14 @@
 
 final class AnonymousObserver<ElementType> : ObserverBase<ElementType> {
     typealias Element = ElementType
-    
+
     typealias EventHandler = (Event<Element>) -> Void
-    
-    private let _eventHandler : EventHandler
-    
+
+    private let _eventHandler: EventHandler
+
     init(_ eventHandler: @escaping EventHandler) {
 #if TRACE_RESOURCES
-        let _ = Resources.incrementTotal()
+        _ = Resources.incrementTotal()
 #endif
         _eventHandler = eventHandler
     }
@@ -23,10 +23,10 @@ final class AnonymousObserver<ElementType> : ObserverBase<ElementType> {
     override func onCore(_ event: Event<Element>) {
         return _eventHandler(event)
     }
-    
+
 #if TRACE_RESOURCES
     deinit {
-        let _ = Resources.decrementTotal()
+        _ = Resources.decrementTotal()
     }
 #endif
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift
index 48a599dd3afbf979d72b6e63a2987bf7eaba2351..23bdbbd30c6c9d8a0c995497cc36522258d5e704 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift
@@ -17,8 +17,7 @@ enum TailRecursiveSinkCommand {
 
 /// This class is usually used with `Generator` version of the operators.
 class TailRecursiveSink<S: Sequence, O: ObserverType>
-    : Sink<O>
-    , InvocableWithValueType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E {
+    : Sink<O>, InvocableWithValueType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E {
     typealias Value = TailRecursiveSinkCommand
     typealias E = O.E
     typealias SequenceGenerator = (generator: S.Iterator, remaining: IntMax?)
@@ -68,19 +67,19 @@ class TailRecursiveSink<S: Sequence, O: ObserverType>
     // should be done on gate locked
 
     private func moveNextCommand() {
-        var next: Observable<E>? = nil
+        var next: Observable<E>?
 
         repeat {
             guard let (g, left) = _generators.last else {
                 break
             }
-            
+
             if _isDisposed {
                 return
             }
 
             _generators.removeLast()
-            
+
             var e = g
 
             guard let nextCandidate = e.next()?.asObservable() else {
@@ -100,8 +99,7 @@ class TailRecursiveSink<S: Sequence, O: ObserverType>
                 if knownOriginalLeft - 1 >= 1 {
                     _generators.append((e, knownOriginalLeft - 1))
                 }
-            }
-            else {
+            } else {
                 _generators.append((e, nil))
             }
 
@@ -114,13 +112,12 @@ class TailRecursiveSink<S: Sequence, O: ObserverType>
                         maxTailRecursiveSinkStackSize = _generators.count
                     }
                 #endif
-            }
-            else {
+            } else {
                 next = nextCandidate
             }
         } while next == nil
 
-        guard let existingNext = next else  {
+        guard let existingNext = next else {
             done()
             return
         }
@@ -141,11 +138,10 @@ class TailRecursiveSink<S: Sequence, O: ObserverType>
 
     override func dispose() {
         super.dispose()
-        
+
         _subscription.dispose()
         _gate.dispose()
-        
+
         schedule(.dispose)
     }
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Rx.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Rx.swift
index af948fcb8655ff717e8c7d5686c26dfb5fb69248..7f5b11a18438fd5e843b54987dae236f10096093 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Rx.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Rx.swift
@@ -7,7 +7,7 @@
 //
 
 #if TRACE_RESOURCES
-    fileprivate var resourceCount = AtomicInt(0)
+    private var resourceCount = AtomicInt(0)
 
     /// Resource utilization information
     public struct Resources {
@@ -37,7 +37,7 @@ func rxAbstractMethod(file: StaticString = #file, line: UInt = #line) -> Swift.N
     rxFatalError("Abstract method", file: file, line: line)
 }
 
-func rxFatalError(_ lastMessage: @autoclosure () -> String, file: StaticString = #file, line: UInt = #line) -> Swift.Never  {
+func rxFatalError(_ lastMessage: @autoclosure () -> String, file: StaticString = #file, line: UInt = #line) -> Swift.Never {
     // The temptation to comment this line is great, but please don't, it's for your own good. The choice is yours.
     fatalError(lastMessage(), file: file, line: line)
 }
@@ -85,7 +85,7 @@ func decrementChecked(_ i: inout Int) throws -> Int {
                 print(message)
             #endif
         }
-        
+
         func register(synchronizationErrorMessage: SynchronizationErrorMessages) {
             _lock.lock(); defer { _lock.unlock() }
             let pointer = Unmanaged.passUnretained(Thread.current).toOpaque()
@@ -104,7 +104,7 @@ func decrementChecked(_ i: inout Int) throws -> Int {
                     "    or by enqueing sequence events in some other way.\n"
                 )
             }
-            
+
             _threads[pointer] = count
 
             if _threads.count > 1 {
@@ -135,7 +135,7 @@ func decrementChecked(_ i: inout Int) throws -> Int {
 
 /// RxSwift global hooks
 public enum Hooks {
-    
+
     // Should capture call stack
     public static var recordCallStackOnError: Bool = false
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/RxMutableBox.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/RxMutableBox.swift
index 7f3c333baa65b124848997b51003391009ee630c..bd88886766a15857929973155591a6a135dd7045 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/RxMutableBox.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/RxMutableBox.swift
@@ -9,8 +9,8 @@
 /// Creates mutable reference wrapper for any type.
 final class RxMutableBox<T> : CustomDebugStringConvertible {
     /// Wrapped value
-    var value : T
-    
+    var value: T
+
     /// Creates reference wrapper for `value`.
     ///
     /// - parameter value: Value to wrap.
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/SchedulerType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/SchedulerType.swift
index bdfcf8b01795a858cd73fc072020ab8df9b0b839..d765c9a45de96cfb0efcae07155b18810ab095a7 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/SchedulerType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/SchedulerType.swift
@@ -19,7 +19,7 @@ public typealias RxTime = Date
 public protocol SchedulerType: ImmediateSchedulerType {
 
     /// - returns: Current time.
-    var now : RxTime {
+    var now: RxTime {
         get
     }
 
@@ -32,7 +32,7 @@ public protocol SchedulerType: ImmediateSchedulerType {
     - returns: The disposable object used to cancel the scheduled action (best effort).
     */
     func scheduleRelative<StateType>(_ state: StateType, dueTime: RxTimeInterval, action: @escaping (StateType) -> Disposable) -> Disposable
- 
+
     /**
     Schedules a periodic piece of work.
     
@@ -57,15 +57,15 @@ extension SchedulerType {
     */
     public func schedulePeriodic<StateType>(_ state: StateType, startAfter: RxTimeInterval, period: RxTimeInterval, action: @escaping (StateType) -> StateType) -> Disposable {
         let schedule = SchedulePeriodicRecursive(scheduler: self, startAfter: startAfter, period: period, action: action, state: state)
-            
+
         return schedule.start()
     }
 
-    func scheduleRecursive<State>(_ state: State, dueTime: RxTimeInterval, action: @escaping (State, AnyRecursiveScheduler<State>) -> ()) -> Disposable {
+    func scheduleRecursive<State>(_ state: State, dueTime: RxTimeInterval, action: @escaping (State, AnyRecursiveScheduler<State>) -> Void) -> Disposable {
         let scheduler = AnyRecursiveScheduler(scheduler: self, action: action)
-         
+
         scheduler.schedule(state, dueTime: dueTime)
-            
+
         return Disposables.create(with: scheduler.dispose)
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift
index aa1f480e525145218604816e5cf14f3d73024f40..b8000979838ef462cd249cb265a69fa0cc020b70 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift
@@ -16,13 +16,13 @@ import Dispatch
 public class ConcurrentDispatchQueueScheduler: SchedulerType {
     public typealias TimeInterval = Foundation.TimeInterval
     public typealias Time = Date
-    
-    public var now : Date {
+
+    public var now: Date {
         return Date()
     }
 
     let configuration: DispatchQueueConfiguration
-    
+
     /// Constructs new `ConcurrentDispatchQueueScheduler` that wraps `queue`.
     ///
     /// - parameter queue: Target dispatch queue.
@@ -30,7 +30,7 @@ public class ConcurrentDispatchQueueScheduler: SchedulerType {
     public init(queue: DispatchQueue, leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) {
         configuration = DispatchQueueConfiguration(queue: queue, leeway: leeway)
     }
-    
+
     /// Convenience init for scheduler that wraps one of the global concurrent dispatch queues.
     ///
     /// - parameter qos: Target global dispatch queue, by quality of service class.
@@ -56,7 +56,7 @@ public class ConcurrentDispatchQueueScheduler: SchedulerType {
     public final func schedule<StateType>(_ state: StateType, action: @escaping (StateType) -> Disposable) -> Disposable {
         return self.configuration.schedule(state, action: action)
     }
-    
+
     /**
     Schedules an action to be executed.
     
@@ -68,7 +68,7 @@ public class ConcurrentDispatchQueueScheduler: SchedulerType {
     public final func scheduleRelative<StateType>(_ state: StateType, dueTime: Foundation.TimeInterval, action: @escaping (StateType) -> Disposable) -> Disposable {
         return self.configuration.scheduleRelative(state, dueTime: dueTime, action: action)
     }
-    
+
     /**
     Schedules a periodic piece of work.
     
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentMainScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentMainScheduler.swift
index a98ad218a083762ff0e596c812ad7f613e0b0aa5..c717147bd51870e5a8f1a70af578a68f8818f8f3 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentMainScheduler.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentMainScheduler.swift
@@ -16,7 +16,7 @@ Abstracts work that needs to be performed on `MainThread`. In case `schedule` me
 This scheduler is optimized for `subscribeOn` operator. If you want to observe observable sequence elements on main thread using `observeOn` operator,
 `MainScheduler` is more suitable for that purpose.
 */
-public final class ConcurrentMainScheduler : SchedulerType {
+public final class ConcurrentMainScheduler: SchedulerType {
     public typealias TimeInterval = Foundation.TimeInterval
     public typealias Time = Date
 
@@ -24,7 +24,7 @@ public final class ConcurrentMainScheduler : SchedulerType {
     private let _mainQueue: DispatchQueue
 
     /// - returns: Current time.
-    public var now : Date {
+    public var now: Date {
         return _mainScheduler.now as Date
     }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift
index 0676444def330f27b425d1592daa8d609177f358..2d8509745859e7cc8a6803fd7c6e51930c70bd4a 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift
@@ -16,12 +16,12 @@ import Dispatch
     import func Foundation.pthread_setspecific
     import func Foundation.pthread_getspecific
     import func Foundation.pthread_key_create
-    
-    fileprivate enum CurrentThreadSchedulerQueueKey {
+
+    private enum CurrentThreadSchedulerQueueKey {
         fileprivate static let instance = "RxSwift.CurrentThreadScheduler.Queue"
     }
 #else
-    fileprivate class CurrentThreadSchedulerQueueKey: NSObject, NSCopying {
+    private class CurrentThreadSchedulerQueueKey: NSObject, NSCopying {
         static let instance = CurrentThreadSchedulerQueueKey()
         private override init() {
             super.init()
@@ -42,7 +42,7 @@ import Dispatch
 /// This is the default scheduler for operators that generate elements.
 ///
 /// This scheduler is also sometimes called `trampoline scheduler`.
-public class CurrentThreadScheduler : ImmediateSchedulerType {
+public class CurrentThreadScheduler: ImmediateSchedulerType {
     typealias ScheduleQueue = RxMutableBox<Queue<ScheduledItemType>>
 
     /// The singleton instance of the current thread scheduler.
@@ -57,7 +57,7 @@ public class CurrentThreadScheduler : ImmediateSchedulerType {
             key.deallocate(capacity: 1)
 #endif
         }
-                                                               
+
         guard pthread_key_create(key, nil) == 0 else {
             rxFatalError("isScheduleRequired key creation failed")
         }
@@ -69,7 +69,7 @@ public class CurrentThreadScheduler : ImmediateSchedulerType {
         return UnsafeRawPointer(UnsafeMutablePointer<Int>.allocate(capacity: 1))
     }()
 
-    static var queue : ScheduleQueue? {
+    static var queue: ScheduleQueue? {
         get {
             return Thread.getThreadLocalStorageValueForKey(CurrentThreadSchedulerQueueKey.instance)
         }
@@ -130,8 +130,7 @@ public class CurrentThreadScheduler : ImmediateSchedulerType {
         let queue: RxMutableBox<Queue<ScheduledItemType>>
         if let existingQueue = existingQueue {
             queue = existingQueue
-        }
-        else {
+        } else {
             queue = RxMutableBox(Queue<ScheduledItemType>(capacity: 1))
             CurrentThreadScheduler.queue = queue
         }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalScheduler.swift
index 11af238a3b1ffb02232b01c95dc4245636bba760..8f76a1407be2f748b9f9def8770956361eebdb2e 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalScheduler.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalScheduler.swift
@@ -9,7 +9,7 @@
 import struct Foundation.Date
 
 /// Provides a virtual time scheduler that uses `Date` for absolute time and `NSTimeInterval` for relative time.
-public class HistoricalScheduler : VirtualTimeScheduler<HistoricalSchedulerTimeConverter> {
+public class HistoricalScheduler: VirtualTimeScheduler<HistoricalSchedulerTimeConverter> {
 
     /**
       Creates a new historical scheduler with initial clock value.
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift
index 930ca37762ba929410b361054fa2ae95f5aaa5dc..260f5a2bd82285f143738560c0e6e4e946e1836b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift
@@ -11,7 +11,7 @@ import struct Foundation.Date
 /// Converts historical virtual time into real time.
 ///
 /// Since historical virtual time is also measured in `Date`, this converter is identity function.
-public struct HistoricalSchedulerTimeConverter : VirtualTimeConverterType {
+public struct HistoricalSchedulerTimeConverter: VirtualTimeConverterType {
     /// Virtual time unit used that represents ticks of virtual clock.
     public typealias VirtualTimeUnit = RxTime
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift
index f2dfb90f279aea741c5269b5a2a649b891edc79b..d16434d234e9bd59d534120df3ccc87c29e1aa16 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift
@@ -30,7 +30,6 @@ extension DispatchQueueConfiguration {
                 return
             }
 
-
             cancel.setDisposable(action(state))
         }
 
@@ -78,7 +77,7 @@ extension DispatchQueueConfiguration {
 
         let timer = DispatchSource.makeTimerSource(queue: queue)
         timer.schedule(deadline: initial, repeating: dispatchInterval(period), leeway: leeway)
-        
+
         // TODO:
         // This looks horrible, and yes, it is.
         // It looks like Apple has made a conceputal change here, and I'm unsure why.
@@ -98,7 +97,7 @@ extension DispatchQueueConfiguration {
             timerState = action(timerState)
         })
         timer.resume()
-        
+
         return cancelTimer
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItem.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItem.swift
index 454fb34bb7e0d56a8ebad18ca1e79d416837f66c..8b01608a651973d85bfb27b195402fcdf781ce60 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItem.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItem.swift
@@ -7,10 +7,9 @@
 //
 
 struct ScheduledItem<T>
-    : ScheduledItemType
-    , InvocableType {
+    : ScheduledItemType, InvocableType {
     typealias Action = (T) -> Disposable
-    
+
     private let _action: Action
     private let _state: T
 
@@ -19,16 +18,16 @@ struct ScheduledItem<T>
     var isDisposed: Bool {
         return _disposable.isDisposed
     }
-    
+
     init(action: @escaping Action, state: T) {
         _action = action
         _state = state
     }
-    
+
     func invoke() {
          _disposable.setDisposable(_action(_state))
     }
-    
+
     func dispose() {
         _disposable.dispose()
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItemType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItemType.swift
index d2b16cab7007a992a05dc86671fa074792a0bbcf..ec05efda6297239cb11562e8c18836b53605581b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItemType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItemType.swift
@@ -6,8 +6,6 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-protocol ScheduledItemType
-    : Cancelable
-    , InvocableType {
+protocol ScheduledItemType: Cancelable, InvocableType {
     func invoke()
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift
index 2a72137520e2ed80fb461fa0aaa98eb5b1bc3a1e..421659f71f9b51a070412746811746d7cbc983a7 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift
@@ -18,7 +18,7 @@ Main scheduler is a specialization of `SerialDispatchQueueScheduler`.
 This scheduler is optimized for `observeOn` operator. To ensure observable sequence is subscribed on main thread using `subscribeOn`
 operator please use `ConcurrentMainScheduler` because it is more optimized for that purpose.
 */
-public final class MainScheduler : SerialDispatchQueueScheduler {
+public final class MainScheduler: SerialDispatchQueueScheduler {
 
     private let _mainQueue: DispatchQueue
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift
index 81ba59f34e478981df3c8d0e0fd52f0775ffac09..a7dc1b8e3ebcecc1183890f54d825e11902ba84f 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift
@@ -17,7 +17,7 @@ import Dispatch
 public class OperationQueueScheduler: ImmediateSchedulerType {
     public let operationQueue: OperationQueue
     public let queuePriority: Operation.QueuePriority
-    
+
     /// Constructs new instance of `OperationQueueScheduler` that performs work on `operationQueue`.
     ///
     /// - parameter operationQueue: Operation queue targeted to perform work on.
@@ -26,7 +26,7 @@ public class OperationQueueScheduler: ImmediateSchedulerType {
         self.operationQueue = operationQueue
         self.queuePriority = queuePriority
     }
-    
+
     /**
     Schedules an action to be executed recursively.
     
@@ -42,14 +42,13 @@ public class OperationQueueScheduler: ImmediateSchedulerType {
                 return
             }
 
-
             cancel.setDisposable(action(state))
         }
 
         operation.queuePriority = self.queuePriority
 
         self.operationQueue.addOperation(operation)
-        
+
         return cancel
     }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/RecursiveScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/RecursiveScheduler.swift
index 24d19cc677eaec509d5f5e6976dd0c7513eb0d7d..f0e4a5d18a80b7cbf5270122720f2c265f2d2404 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/RecursiveScheduler.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/RecursiveScheduler.swift
@@ -6,7 +6,7 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-fileprivate enum ScheduleState {
+private enum ScheduleState {
     case initial
     case added(CompositeDisposable.DisposeKey)
     case done
@@ -14,17 +14,17 @@ fileprivate enum ScheduleState {
 
 /// Type erased recursive scheduler.
 final class AnyRecursiveScheduler<State> {
-    
+
     typealias Action =  (State, AnyRecursiveScheduler<State>) -> Void
 
     private let _lock = RecursiveLock()
-    
+
     // state
     private let _group = CompositeDisposable()
 
     private var _scheduler: SchedulerType
     private var _action: Action?
-    
+
     init(scheduler: SchedulerType, action: @escaping Action) {
         _action = action
         _scheduler = scheduler
@@ -44,7 +44,7 @@ final class AnyRecursiveScheduler<State> {
             if self._group.isDisposed {
                 return Disposables.create()
             }
-            
+
             let action = self._lock.calculateLocked { () -> Action? in
                 switch scheduleState {
                 case let .added(removeKey):
@@ -59,14 +59,14 @@ final class AnyRecursiveScheduler<State> {
 
                 return self._action
             }
-            
+
             if let action = action {
                 action(state, self)
             }
-            
+
             return Disposables.create()
         }
-            
+
         _lock.performLocked {
             switch scheduleState {
             case .added:
@@ -75,8 +75,7 @@ final class AnyRecursiveScheduler<State> {
             case .initial:
                 if let removeKey = _group.insert(d) {
                     scheduleState = .added(removeKey)
-                }
-                else {
+                } else {
                     scheduleState = .done
                 }
                 break
@@ -97,7 +96,7 @@ final class AnyRecursiveScheduler<State> {
             if self._group.isDisposed {
                 return Disposables.create()
             }
-            
+
             let action = self._lock.calculateLocked { () -> Action? in
                 switch scheduleState {
                 case let .added(removeKey):
@@ -109,17 +108,17 @@ final class AnyRecursiveScheduler<State> {
                 }
 
                 scheduleState = .done
-                
+
                 return self._action
             }
-           
+
             if let action = action {
                 action(state, self)
             }
-            
+
             return Disposables.create()
         }
-        
+
         _lock.performLocked {
             switch scheduleState {
             case .added:
@@ -128,8 +127,7 @@ final class AnyRecursiveScheduler<State> {
             case .initial:
                 if let removeKey = _group.insert(d) {
                     scheduleState = .added(removeKey)
-                }
-                else {
+                } else {
                     scheduleState = .done
                 }
                 break
@@ -138,7 +136,7 @@ final class AnyRecursiveScheduler<State> {
             }
         }
     }
-    
+
     func dispose() {
         _lock.performLocked {
             _action = nil
@@ -150,20 +148,20 @@ final class AnyRecursiveScheduler<State> {
 /// Type erased recursive scheduler.
 final class RecursiveImmediateScheduler<State> {
     typealias Action =  (_ state: State, _ recurse: (State) -> Void) -> Void
-    
+
     private var _lock = SpinLock()
     private let _group = CompositeDisposable()
-    
+
     private var _action: Action?
     private let _scheduler: ImmediateSchedulerType
-    
+
     init(action: @escaping Action, scheduler: ImmediateSchedulerType) {
         _action = action
         _scheduler = scheduler
     }
-    
+
     // immediate scheduling
-    
+
     /// Schedules an action to be executed recursively.
     ///
     /// - parameter state: State passed to the action to be executed.
@@ -175,7 +173,7 @@ final class RecursiveImmediateScheduler<State> {
             if self._group.isDisposed {
                 return Disposables.create()
             }
-            
+
             let action = self._lock.calculateLocked { () -> Action? in
                 switch scheduleState {
                 case let .added(removeKey):
@@ -190,14 +188,14 @@ final class RecursiveImmediateScheduler<State> {
 
                 return self._action
             }
-            
+
             if let action = action {
                 action(state, self.schedule)
             }
-            
+
             return Disposables.create()
         }
-        
+
         _lock.performLocked {
             switch scheduleState {
             case .added:
@@ -206,8 +204,7 @@ final class RecursiveImmediateScheduler<State> {
             case .initial:
                 if let removeKey = _group.insert(d) {
                     scheduleState = .added(removeKey)
-                }
-                else {
+                } else {
                     scheduleState = .done
                 }
                 break
@@ -216,7 +213,7 @@ final class RecursiveImmediateScheduler<State> {
             }
         }
     }
-    
+
     func dispose() {
         _lock.performLocked {
             _action = nil
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SchedulerServices+Emulation.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SchedulerServices+Emulation.swift
index ca0a04a8ae881d6e9f2a7387861fc829cb727c50..2e6bd76c365693297c7fe6cc9a8ba4242e37e8d6 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SchedulerServices+Emulation.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SchedulerServices+Emulation.swift
@@ -35,7 +35,7 @@ final class SchedulePeriodicRecursive<State> {
         return _scheduler.scheduleRecursive(SchedulePeriodicRecursiveCommand.tick, dueTime: _startAfter, action: self.tick)
     }
 
-    func tick(_ command: SchedulePeriodicRecursiveCommand, scheduler: RecursiveScheduler) -> Void {
+    func tick(_ command: SchedulePeriodicRecursiveCommand, scheduler: RecursiveScheduler) {
         // Tries to emulate periodic scheduling as best as possible.
         // The problem that could arise is if handling periodic ticks take too long, or
         // tick interval is short.
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift
index 1a38a739689bd765dd6396210a37f70400dcd8a2..33dfc6e8d4ebca777b5ddfe7b97af2d215f221db 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift
@@ -27,17 +27,17 @@ In case some customization need to be made on it before usage,
 internal serial queue can be customized using `serialQueueConfiguration`
 callback.
 */
-public class SerialDispatchQueueScheduler : SchedulerType {
+public class SerialDispatchQueueScheduler: SchedulerType {
     public typealias TimeInterval = Foundation.TimeInterval
     public typealias Time = Date
-    
+
     /// - returns: Current time.
-    public var now : Date {
+    public var now: Date {
         return Date()
     }
 
     let configuration: DispatchQueueConfiguration
-    
+
     /**
     Constructs new `SerialDispatchQueueScheduler` that wraps `serialQueue`.
 
@@ -62,7 +62,7 @@ public class SerialDispatchQueueScheduler : SchedulerType {
         serialQueueConfiguration?(queue)
         self.init(serialQueue: queue, leeway: leeway)
     }
-    
+
     /**
     Constructs new `SerialDispatchQueueScheduler` named `internalSerialQueueName` that wraps `queue`.
     
@@ -89,7 +89,7 @@ public class SerialDispatchQueueScheduler : SchedulerType {
     public convenience init(qos: DispatchQoS, internalSerialQueueName: String = "rx.global_dispatch_queue.serial", leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) {
         self.init(queue: DispatchQueue.global(qos: qos.qosClass), internalSerialQueueName: internalSerialQueueName, leeway: leeway)
     }
-    
+
     /**
     Schedules an action to be executed immediately.
     
@@ -116,7 +116,7 @@ public class SerialDispatchQueueScheduler : SchedulerType {
     public final func scheduleRelative<StateType>(_ state: StateType, dueTime: Foundation.TimeInterval, action: @escaping (StateType) -> Disposable) -> Disposable {
         return self.configuration.scheduleRelative(state, dueTime: dueTime, action: action)
     }
-    
+
     /**
     Schedules a periodic piece of work.
     
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeScheduler.swift
index c0e1aa562402665e0c3a6dd80431c003d2a8135b..0c86a089aeed22e459f49aea19eca3ebca404f9a 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeScheduler.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeScheduler.swift
@@ -13,11 +13,11 @@ open class VirtualTimeScheduler<Converter: VirtualTimeConverterType>
     public typealias VirtualTime = Converter.VirtualTimeUnit
     public typealias VirtualTimeInterval = Converter.VirtualTimeIntervalUnit
 
-    private var _running : Bool
+    private var _running: Bool
 
     private var _clock: VirtualTime
 
-    fileprivate var _schedulerQueue : PriorityQueue<VirtualSchedulerItem<VirtualTime>>
+    fileprivate var _schedulerQueue: PriorityQueue<VirtualSchedulerItem<VirtualTime>>
     private var _converter: Converter
 
     private var _nextId = 0
@@ -50,7 +50,7 @@ open class VirtualTimeScheduler<Converter: VirtualTimeConverterType>
             }
         }, isEqual: { $0 === $1 })
         #if TRACE_RESOURCES
-            let _ = Resources.incrementTotal()
+            _ = Resources.incrementTotal()
         #endif
     }
 
@@ -116,9 +116,9 @@ open class VirtualTimeScheduler<Converter: VirtualTimeConverterType>
         _nextId += 1
 
         _schedulerQueue.enqueue(item)
-        
+
         _ = compositeDisposable.insert(item)
-        
+
         return compositeDisposable
     }
 
@@ -141,7 +141,7 @@ open class VirtualTimeScheduler<Converter: VirtualTimeConverterType>
                 break
             }
 
-            if _converter.compareVirtualTime(next.time, self.clock).greaterThan  {
+            if _converter.compareVirtualTime(next.time, self.clock).greaterThan {
                 _clock = next.time
             }
 
@@ -185,7 +185,7 @@ open class VirtualTimeScheduler<Converter: VirtualTimeConverterType>
                 break
             }
 
-            if _converter.compareVirtualTime(next.time, self.clock).greaterThan  {
+            if _converter.compareVirtualTime(next.time, self.clock).greaterThan {
                 _clock = next.time
             }
 
@@ -235,7 +235,7 @@ extension VirtualTimeScheduler: CustomDebugStringConvertible {
 final class VirtualSchedulerItem<Time>
     : Disposable {
     typealias Action = () -> Disposable
-    
+
     let action: Action
     let time: Time
     let id: Int
@@ -243,9 +243,9 @@ final class VirtualSchedulerItem<Time>
     var isDisposed: Bool {
         return disposable.isDisposed
     }
-    
+
     var disposable = SingleAssignmentDisposable()
-    
+
     init(action: @escaping Action, time: Time, id: Int) {
         self.action = action
         self.time = time
@@ -255,14 +255,13 @@ final class VirtualSchedulerItem<Time>
     func invoke() {
          self.disposable.setDisposable(action())
     }
-    
+
     func dispose() {
         self.disposable.dispose()
     }
 }
 
-extension VirtualSchedulerItem
-    : CustomDebugStringConvertible {
+extension VirtualSchedulerItem: CustomDebugStringConvertible {
     var debugDescription: String {
         return "\(time)"
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/AsyncSubject.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/AsyncSubject.swift
index 520207d8794f3a526d97f2a1bc1ed77f60d766f3..cb80d425d5b6aba68acb1e430b4a461c669a0f15 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/AsyncSubject.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/AsyncSubject.swift
@@ -11,10 +11,7 @@
 ///
 /// (If the source Observable does not emit any values, the AsyncSubject also completes without emitting any values.)
 public final class AsyncSubject<Element>
-    : Observable<Element>
-    , SubjectType
-    , ObserverType
-    , SynchronizedUnsubscribeType {
+    : Observable<Element>, SubjectType, ObserverType, SynchronizedUnsubscribeType {
     public typealias SubjectObserverType = AsyncSubject<Element>
 
     typealias Observers = AnyObserver<Element>.s
@@ -42,7 +39,6 @@ public final class AsyncSubject<Element>
         fileprivate let _synchronizationTracker = SynchronizationTracker()
     #endif
 
-
     /// Creates a subject.
     public override init() {
         #if TRACE_RESOURCES
@@ -96,8 +92,7 @@ public final class AsyncSubject<Element>
             if let lastElement = _lastElement {
                 _stoppedEvent = .next(lastElement)
                 return (observers, .next(lastElement))
-            }
-            else {
+            } else {
                 _stoppedEvent = event
                 return (observers, .completed)
             }
@@ -108,12 +103,12 @@ public final class AsyncSubject<Element>
     ///
     /// - parameter observer: Observer to subscribe to the subject.
     /// - returns: Disposable object that can be used to unsubscribe the observer from the subject.
-    public override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+    public override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         _lock.lock(); defer { _lock.unlock() }
         return _synchronized_subscribe(observer)
     }
 
-    func _synchronized_subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == E {
+    func _synchronized_subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == E {
         if let stoppedEvent = _stoppedEvent {
             switch stoppedEvent {
             case .next:
@@ -136,11 +131,11 @@ public final class AsyncSubject<Element>
         _lock.lock(); defer { _lock.unlock() }
         _synchronized_unsubscribe(disposeKey)
     }
-    
+
     func _synchronized_unsubscribe(_ disposeKey: DisposeKey) {
         _ = _observers.removeKey(disposeKey)
     }
-    
+
     /// Returns observer interface for subject.
     public func asObserver() -> AsyncSubject<Element> {
         return self
@@ -152,4 +147,3 @@ public final class AsyncSubject<Element>
     }
     #endif
 }
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/BehaviorSubject.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/BehaviorSubject.swift
index f2de851a7c30de3221e550637f65a17926af92b0..8286120e57f318649c2a5186d77f9236755795ee 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/BehaviorSubject.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/BehaviorSubject.swift
@@ -10,16 +10,12 @@
 ///
 /// Observers can subscribe to the subject to receive the last (or initial) value and all subsequent notifications.
 public final class BehaviorSubject<Element>
-    : Observable<Element>
-    , SubjectType
-    , ObserverType
-    , SynchronizedUnsubscribeType
-    , Disposable {
+    : Observable<Element>, SubjectType, ObserverType, SynchronizedUnsubscribeType, Disposable {
     public typealias SubjectObserverType = BehaviorSubject<Element>
 
     typealias Observers = AnyObserver<Element>.s
     typealias DisposeKey = Observers.KeyType
-    
+
     /// Indicates whether the subject has any observers
     public var hasObservers: Bool {
         _lock.lock()
@@ -27,9 +23,9 @@ public final class BehaviorSubject<Element>
         _lock.unlock()
         return value
     }
-    
+
     let _lock = RecursiveLock()
-    
+
     // state
     private var _isDisposed = false
     private var _element: Element
@@ -44,7 +40,7 @@ public final class BehaviorSubject<Element>
     public var isDisposed: Bool {
         return _isDisposed
     }
- 
+
     /// Initializes a new instance of the subject that caches its last value and starts with the specified value.
     ///
     /// - parameter value: Initial value sent to observers when no other value has been received by the subject yet.
@@ -55,7 +51,7 @@ public final class BehaviorSubject<Element>
             _ = Resources.incrementTotal()
         #endif
     }
-    
+
     /// Gets the current value or throws an error.
     ///
     /// - returns: Latest value.
@@ -64,17 +60,16 @@ public final class BehaviorSubject<Element>
             if _isDisposed {
                 throw RxError.disposed(object: self)
             }
-            
+
             if let error = _stoppedEvent?.error {
                 // intentionally throw exception
                 throw error
-            }
-            else {
+            } else {
                 return _element
             }
         //}
     }
-    
+
     /// Notifies all subscribed observers about next event.
     ///
     /// - parameter event: Event to send to the observers.
@@ -91,42 +86,42 @@ public final class BehaviorSubject<Element>
         if _stoppedEvent != nil || _isDisposed {
             return Observers()
         }
-        
+
         switch event {
         case .next(let element):
             _element = element
         case .error, .completed:
             _stoppedEvent = event
         }
-        
+
         return _observers
     }
-    
+
     /// Subscribes an observer to the subject.
     ///
     /// - parameter observer: Observer to subscribe to the subject.
     /// - returns: Disposable object that can be used to unsubscribe the observer from the subject.
-    public override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+    public override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         _lock.lock()
         let subscription = _synchronized_subscribe(observer)
         _lock.unlock()
         return subscription
     }
 
-    func _synchronized_subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == E {
+    func _synchronized_subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == E {
         if _isDisposed {
             observer.on(.error(RxError.disposed(object: self)))
             return Disposables.create()
         }
-        
+
         if let stoppedEvent = _stoppedEvent {
             observer.on(stoppedEvent)
             return Disposables.create()
         }
-        
+
         let key = _observers.insert(observer.on)
         observer.on(.next(_element))
-    
+
         return SubscriptionDisposable(owner: self, key: key)
     }
 
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/PublishSubject.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/PublishSubject.swift
index d847ce8698391a0769fa19d5475b692734cddbba..c2126594392902b3c6cf47c7f1cacfdd9f950830 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/PublishSubject.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/PublishSubject.swift
@@ -10,16 +10,12 @@
 ///
 /// Each notification is broadcasted to all subscribed observers.
 public final class PublishSubject<Element>
-    : Observable<Element>
-    , SubjectType
-    , Cancelable
-    , ObserverType
-    , SynchronizedUnsubscribeType {
+    : Observable<Element>, SubjectType, Cancelable, ObserverType, SynchronizedUnsubscribeType {
     public typealias SubjectObserverType = PublishSubject<Element>
 
     typealias Observers = AnyObserver<Element>.s
     typealias DisposeKey = Observers.KeyType
-    
+
     /// Indicates whether the subject has any observers
     public var hasObservers: Bool {
         _lock.lock()
@@ -27,9 +23,9 @@ public final class PublishSubject<Element>
         _lock.unlock()
         return count
     }
-    
+
     private let _lock = RecursiveLock()
-    
+
     // state
     private var _isDisposed = false
     private var _observers = Observers()
@@ -44,7 +40,7 @@ public final class PublishSubject<Element>
     public var isDisposed: Bool {
         return _isDisposed
     }
-    
+
     /// Creates a subject.
     public override init() {
         super.init()
@@ -52,7 +48,7 @@ public final class PublishSubject<Element>
             _ = Resources.incrementTotal()
         #endif
     }
-    
+
     /// Notifies all subscribed observers about next event.
     ///
     /// - parameter event: Event to send to the observers.
@@ -67,11 +63,11 @@ public final class PublishSubject<Element>
     func _synchronized_on(_ event: Event<E>) -> Observers {
         _lock.lock(); defer { _lock.unlock() }
         switch event {
-        case .next(_):
+        case .next:
             if _isDisposed || _stopped {
                 return Observers()
             }
-            
+
             return _observers
         case .completed, .error:
             if _stoppedEvent == nil {
@@ -85,31 +81,31 @@ public final class PublishSubject<Element>
             return Observers()
         }
     }
-    
+
     /**
     Subscribes an observer to the subject.
     
     - parameter observer: Observer to subscribe to the subject.
     - returns: Disposable object that can be used to unsubscribe the observer from the subject.
     */
-    public override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+    public override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         _lock.lock()
         let subscription = _synchronized_subscribe(observer)
         _lock.unlock()
         return subscription
     }
 
-    func _synchronized_subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == E {
+    func _synchronized_subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == E {
         if let stoppedEvent = _stoppedEvent {
             observer.on(stoppedEvent)
             return Disposables.create()
         }
-        
+
         if _isDisposed {
             observer.on(.error(RxError.disposed(object: self)))
             return Disposables.create()
         }
-        
+
         let key = _observers.insert(observer.on)
         return SubscriptionDisposable(owner: self, key: key)
     }
@@ -123,12 +119,12 @@ public final class PublishSubject<Element>
     func _synchronized_unsubscribe(_ disposeKey: DisposeKey) {
         _ = _observers.removeKey(disposeKey)
     }
-    
+
     /// Returns observer interface for subject.
     public func asObserver() -> PublishSubject<Element> {
         return self
     }
-    
+
     /// Unsubscribe all observers and release resources.
     public func dispose() {
         _lock.lock()
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/ReplaySubject.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/ReplaySubject.swift
index 54abc35b24f693949233710a8d4131f30e0a177b..2e37a079ac612d78ab47bcbd4559b2c1ced3d85e 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/ReplaySubject.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/ReplaySubject.swift
@@ -10,10 +10,7 @@
 ///
 /// Each notification is broadcasted to all subscribed and future observers, subject to buffer trimming policies.
 public class ReplaySubject<Element>
-    : Observable<Element>
-    , SubjectType
-    , ObserverType
-    , Disposable {
+    : Observable<Element>, SubjectType, ObserverType, Disposable {
     public typealias SubjectObserverType = ReplaySubject<Element>
 
     typealias Observers = AnyObserver<Element>.s
@@ -26,9 +23,9 @@ public class ReplaySubject<Element>
         _lock.unlock()
         return value
     }
-    
+
     fileprivate let _lock = RecursiveLock()
-    
+
     // state
     fileprivate var _isDisposed = false
     fileprivate var _isStopped = false
@@ -50,19 +47,19 @@ public class ReplaySubject<Element>
     final var isStopped: Bool {
         return _isStopped
     }
-    
+
     /// Notifies all subscribed observers about next event.
     ///
     /// - parameter event: Event to send to the observers.
     public func on(_ event: Event<E>) {
         rxAbstractMethod()
     }
-    
+
     /// Returns observer interface for subject.
     public func asObserver() -> SubjectObserverType {
         return self
     }
-    
+
     /// Unsubscribe all observers and release resources.
     public func dispose() {
     }
@@ -74,8 +71,7 @@ public class ReplaySubject<Element>
     public static func create(bufferSize: Int) -> ReplaySubject<Element> {
         if bufferSize == 1 {
             return ReplayOne()
-        }
-        else {
+        } else {
             return ReplayMany(bufferSize: bufferSize)
         }
     }
@@ -98,22 +94,21 @@ public class ReplaySubject<Element>
     #endif
 }
 
-fileprivate class ReplayBufferBase<Element>
-    : ReplaySubject<Element>
-    , SynchronizedUnsubscribeType {
-    
+private class ReplayBufferBase<Element>
+    : ReplaySubject<Element>, SynchronizedUnsubscribeType {
+
     func trim() {
         rxAbstractMethod()
     }
-    
+
     func addValueToBuffer(_ value: Element) {
         rxAbstractMethod()
     }
-    
+
     func replayBuffer<O: ObserverType>(_ observer: O) where O.E == Element {
         rxAbstractMethod()
     }
-    
+
     override func on(_ event: Event<Element>) {
         #if DEBUG
             _synchronizationTracker.register(synchronizationErrorMessage: .default)
@@ -127,11 +122,11 @@ fileprivate class ReplayBufferBase<Element>
         if _isDisposed {
             return Observers()
         }
-        
+
         if _isStopped {
             return Observers()
         }
-        
+
         switch event {
         case .next(let element):
             addValueToBuffer(element)
@@ -145,28 +140,27 @@ fileprivate class ReplayBufferBase<Element>
             return observers
         }
     }
-    
-    override func subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == Element {
+
+    override func subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == Element {
         _lock.lock()
         let subscription = _synchronized_subscribe(observer)
         _lock.unlock()
         return subscription
     }
 
-    func _synchronized_subscribe<O : ObserverType>(_ observer: O) -> Disposable where O.E == E {
+    func _synchronized_subscribe<O: ObserverType>(_ observer: O) -> Disposable where O.E == E {
         if _isDisposed {
             observer.on(.error(RxError.disposed(object: self)))
             return Disposables.create()
         }
-     
+
         let anyObserver = observer.asObserver()
-        
+
         replayBuffer(anyObserver)
         if let stoppedEvent = _stoppedEvent {
             observer.on(stoppedEvent)
             return Disposables.create()
-        }
-        else {
+        } else {
             let key = _observers.insert(observer.on)
             return SubscriptionDisposable(owner: self, key: key)
         }
@@ -182,10 +176,10 @@ fileprivate class ReplayBufferBase<Element>
         if _isDisposed {
             return
         }
-        
+
         _ = _observers.removeKey(disposeKey)
     }
-    
+
     override func dispose() {
         super.dispose()
 
@@ -206,15 +200,15 @@ fileprivate class ReplayBufferBase<Element>
 
 fileprivate final class ReplayOne<Element> : ReplayBufferBase<Element> {
     private var _value: Element?
-    
+
     override init() {
         super.init()
     }
-    
+
     override func trim() {
-        
+
     }
-    
+
     override func addValueToBuffer(_ value: Element) {
         _value = value
     }
@@ -231,13 +225,13 @@ fileprivate final class ReplayOne<Element> : ReplayBufferBase<Element> {
     }
 }
 
-fileprivate class ReplayManyBase<Element> : ReplayBufferBase<Element> {
+private class ReplayManyBase<Element> : ReplayBufferBase<Element> {
     fileprivate var _queue: Queue<Element>
-    
+
     init(queueSize: Int) {
         _queue = Queue(capacity: queueSize + 1)
     }
-    
+
     override func addValueToBuffer(_ value: Element) {
         _queue.enqueue(value)
     }
@@ -256,13 +250,13 @@ fileprivate class ReplayManyBase<Element> : ReplayBufferBase<Element> {
 
 fileprivate final class ReplayMany<Element> : ReplayManyBase<Element> {
     private let _bufferSize: Int
-    
+
     init(bufferSize: Int) {
         _bufferSize = bufferSize
-        
+
         super.init(queueSize: bufferSize)
     }
-    
+
     override func trim() {
         while _queue.count > _bufferSize {
             _ = _queue.dequeue()
@@ -274,8 +268,8 @@ fileprivate final class ReplayAll<Element> : ReplayManyBase<Element> {
     init() {
         super.init(queueSize: 0)
     }
-    
+
     override func trim() {
-        
+
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/SubjectType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/SubjectType.swift
index 0fc0d03592b1195e663e490be46ad01fa342c857..6fb3b6ec630bb2f8fe5a345f775a57f943436358 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/SubjectType.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Subjects/SubjectType.swift
@@ -7,15 +7,15 @@
 //
 
 /// Represents an object that is both an observable sequence as well as an observer.
-public protocol SubjectType : ObservableType {
+public protocol SubjectType: ObservableType {
     /// The type of the observer that represents this subject.
     ///
     /// Usually this type is type of subject itself, but it doesn't have to be.
-    associatedtype SubjectObserverType : ObserverType
+    associatedtype SubjectObserverType: ObserverType
 
     /// Returns observer interface for subject.
     ///
     /// - returns: Observer interface for subject.
     func asObserver() -> SubjectObserverType
-    
+
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Completable+AndThen.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Completable+AndThen.swift
index c02c9e5147e95fc235d78c6fb7dbdcb0be9b53aa..e2af1951273aea37282e4df48b1dad18c962572a 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Completable+AndThen.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Completable+AndThen.swift
@@ -60,7 +60,7 @@ extension PrimitiveSequenceType where TraitType == CompletableTrait, ElementType
     }
 }
 
-final fileprivate class ConcatCompletable<Element> : Producer<Element> {
+final private class ConcatCompletable<Element> : Producer<Element> {
     fileprivate let _completable: Observable<Never>
     fileprivate let _second: Observable<Element>
 
@@ -69,22 +69,21 @@ final fileprivate class ConcatCompletable<Element> : Producer<Element> {
         self._second = second
     }
 
-    override func run<O>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O : ObserverType, O.E == Element {
+    override func run<O>(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O: ObserverType, O.E == Element {
         let sink = ConcatCompletableSink(parent: self, observer: observer, cancel: cancel)
         let subscription = sink.run()
         return (sink: sink, subscription: subscription)
     }
 }
 
-final fileprivate class ConcatCompletableSink<O: ObserverType>
-    : Sink<O>
-    , ObserverType {
+final private class ConcatCompletableSink<O: ObserverType>
+    : Sink<O>, ObserverType {
     typealias E = Never
     typealias Parent = ConcatCompletable<O.E>
 
     private let _parent: Parent
     private let _subscription = SerialDisposable()
-    
+
     init(parent: Parent, observer: O, cancel: Cancelable) {
         self._parent = parent
         super.init(observer: observer, cancel: cancel)
@@ -111,12 +110,12 @@ final fileprivate class ConcatCompletableSink<O: ObserverType>
     }
 }
 
-final fileprivate class ConcatCompletableSinkOther<O: ObserverType>
+final private class ConcatCompletableSinkOther<O: ObserverType>
     : ObserverType {
     typealias E = O.E
 
     typealias Parent = ConcatCompletableSink<O>
-    
+
     private let _parent: Parent
 
     init(parent: Parent) {
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Completable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Completable.swift
index 8431fed1671153dcf95e116520c3b3e430668849..aed6ed47abed0d1468a06e7953ce4a6b30df97c8 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Completable.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Completable.swift
@@ -18,14 +18,14 @@ public typealias Completable = PrimitiveSequence<CompletableTrait, Swift.Never>
 public enum CompletableEvent {
     /// Sequence terminated with an error. (underlying observable sequence emits: `.error(Error)`)
     case error(Swift.Error)
-    
+
     /// Sequence completed successfully.
     case completed
 }
 
 public extension PrimitiveSequenceType where TraitType == CompletableTrait, ElementType == Swift.Never {
-    public typealias CompletableObserver = (CompletableEvent) -> ()
-    
+    public typealias CompletableObserver = (CompletableEvent) -> Void
+
     /**
      Creates an observable sequence from a specified subscribe method implementation.
      
@@ -45,21 +45,21 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
                 }
             }
         }
-        
+
         return PrimitiveSequence(raw: source)
     }
-    
+
     /**
      Subscribes `observer` to receive events for this sequence.
      
      - returns: Subscription for `observer` that can be used to cancel production of sequence elements and free resources.
      */
-    public func subscribe(_ observer: @escaping (CompletableEvent) -> ()) -> Disposable {
+    public func subscribe(_ observer: @escaping (CompletableEvent) -> Void) -> Disposable {
         var stopped = false
         return self.primitiveSequence.asObservable().subscribe { event in
             if stopped { return }
             stopped = true
-            
+
             switch event {
             case .next:
                 rxFatalError("Completables can't emit values")
@@ -70,7 +70,7 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
             }
         }
     }
-    
+
     /**
      Subscribes a completion handler and an error handler for this sequence.
      
@@ -136,7 +136,7 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
 
 }
 
-public extension PrimitiveSequenceType where TraitType == CompletableTrait, ElementType == Swift.Never {    
+public extension PrimitiveSequenceType where TraitType == CompletableTrait, ElementType == Swift.Never {
     /**
      Invokes an action for each event in the observable sequence, and propagates all observer messages through the result sequence.
      
@@ -152,9 +152,9 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
      */
     public func `do`(onError: ((Swift.Error) throws -> Void)? = nil,
                      onCompleted: (() throws -> Void)? = nil,
-                     onSubscribe: (() -> ())? = nil,
-                     onSubscribed: (() -> ())? = nil,
-                     onDispose: (() -> ())? = nil)
+                     onSubscribe: (() -> Void)? = nil,
+                     onSubscribed: (() -> Void)? = nil,
+                     onDispose: (() -> Void)? = nil)
         -> Completable {
             return Completable(raw: primitiveSequence.source.do(
                 onError: onError,
@@ -165,8 +165,6 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
             )
     }
 
-
-
     /**
      Concatenates the second observable sequence to `self` upon successful termination of `self`.
      
@@ -178,7 +176,7 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
     public func concat(_ second: Completable) -> Completable {
         return Completable.concat(primitiveSequence, second)
     }
-    
+
     /**
      Concatenates all observable sequences in the given sequence, as long as the previous observable sequence terminated successfully.
      
@@ -191,7 +189,7 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
             let source = Observable.concat(sequence.lazy.map { $0.asObservable() })
             return Completable(raw: source)
     }
-    
+
     /**
      Concatenates all observable sequences in the given sequence, as long as the previous observable sequence terminated successfully.
      
@@ -204,7 +202,7 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
             let source = Observable.concat(collection.map { $0.asObservable() })
             return Completable(raw: source)
     }
-    
+
     /**
      Concatenates all observable sequences in the given sequence, as long as the previous observable sequence terminated successfully.
      
@@ -216,7 +214,7 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
         let source = Observable.concat(sources.map { $0.asObservable() })
         return Completable(raw: source)
     }
-    
+
     /**
      Merges elements from all observable sequences from collection into a single observable sequence.
      
@@ -230,7 +228,7 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
             let source = Observable.merge(sources.map { $0.asObservable() })
             return Completable(raw: source)
     }
-    
+
     /**
      Merges elements from all observable sequences from array into a single observable sequence.
      
@@ -243,7 +241,7 @@ public extension PrimitiveSequenceType where TraitType == CompletableTrait, Elem
         let source = Observable.merge(sources.map { $0.asObservable() })
         return Completable(raw: source)
     }
-    
+
     /**
      Merges elements from all observable sequences into a single observable sequence.
      
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Maybe.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Maybe.swift
index ad5859eaf9b90f420075d0379087f1362523bcae..682c2fd4c0b4e0b72b96a15ee1407253588b9c5b 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Maybe.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Maybe.swift
@@ -18,17 +18,17 @@ public typealias Maybe<Element> = PrimitiveSequence<MaybeTrait, Element>
 public enum MaybeEvent<Element> {
     /// One and only sequence element is produced. (underlying observable sequence emits: `.next(Element)`, `.completed`)
     case success(Element)
-    
+
     /// Sequence terminated with an error. (underlying observable sequence emits: `.error(Error)`)
     case error(Swift.Error)
-    
+
     /// Sequence completed successfully.
     case completed
 }
 
 public extension PrimitiveSequenceType where TraitType == MaybeTrait {
-    public typealias MaybeObserver = (MaybeEvent<ElementType>) -> ()
-    
+    public typealias MaybeObserver = (MaybeEvent<ElementType>) -> Void
+
     /**
      Creates an observable sequence from a specified subscribe method implementation.
      
@@ -51,21 +51,21 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait {
                 }
             }
         }
-        
+
         return PrimitiveSequence(raw: source)
     }
-    
+
     /**
      Subscribes `observer` to receive events for this sequence.
      
      - returns: Subscription for `observer` that can be used to cancel production of sequence elements and free resources.
      */
-    public func subscribe(_ observer: @escaping (MaybeEvent<ElementType>) -> ()) -> Disposable {
+    public func subscribe(_ observer: @escaping (MaybeEvent<ElementType>) -> Void) -> Disposable {
         var stopped = false
         return self.primitiveSequence.asObservable().subscribe { event in
             if stopped { return }
             stopped = true
-            
+
             switch event {
             case .next(let element):
                 observer(.success(element))
@@ -76,7 +76,7 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait {
             }
         }
     }
-    
+
     /**
      Subscribes a success handler, an error handler, and a completion handler for this sequence.
      
@@ -111,7 +111,7 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait {
     }
 }
 
-public extension PrimitiveSequenceType where TraitType == MaybeTrait {    
+public extension PrimitiveSequenceType where TraitType == MaybeTrait {
     /**
      Returns an observable sequence that contains a single element.
      
@@ -123,7 +123,7 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait {
     public static func just(_ element: ElementType) -> Maybe<ElementType> {
         return Maybe(raw: Observable.just(element))
     }
-    
+
     /**
      Returns an observable sequence that contains a single element.
      
@@ -188,9 +188,9 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait {
     public func `do`(onNext: ((ElementType) throws -> Void)? = nil,
                      onError: ((Swift.Error) throws -> Void)? = nil,
                      onCompleted: (() throws -> Void)? = nil,
-                     onSubscribe: (() -> ())? = nil,
-                     onSubscribed: (() -> ())? = nil,
-                     onDispose: (() -> ())? = nil)
+                     onSubscribe: (() -> Void)? = nil,
+                     onSubscribed: (() -> Void)? = nil,
+                     onDispose: (() -> Void)? = nil)
         -> Maybe<ElementType> {
             return Maybe(raw: primitiveSequence.source.do(
                 onNext: onNext,
@@ -201,7 +201,7 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait {
                 onDispose: onDispose)
             )
     }
-    
+
     /**
      Filters the elements of an observable sequence based on a predicate.
      
@@ -214,7 +214,7 @@ public extension PrimitiveSequenceType where TraitType == MaybeTrait {
         -> Maybe<ElementType> {
             return Maybe(raw: primitiveSequence.source.filter(predicate))
     }
-    
+
     /**
      Projects each element of an observable sequence into a new form.
      
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence+Zip+arity.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence+Zip+arity.swift
index e50e57659767be9424bc73148f0ec98d331c0f73..7f9919498916dc5b8a06561dea6d3bb8c9323369 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence+Zip+arity.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence+Zip+arity.swift
@@ -7,8 +7,6 @@
 //  Copyright © 2015 Krunoslav Zaher. All rights reserved.
 //
 
-
-
 // 2
 
 extension PrimitiveSequenceType where TraitType == SingleTrait {
@@ -79,9 +77,6 @@ extension PrimitiveSequenceType where ElementType == Any, TraitType == MaybeTrai
     }
 }
 
-
-
-
 // 3
 
 extension PrimitiveSequenceType where TraitType == SingleTrait {
@@ -152,9 +147,6 @@ extension PrimitiveSequenceType where ElementType == Any, TraitType == MaybeTrai
     }
 }
 
-
-
-
 // 4
 
 extension PrimitiveSequenceType where TraitType == SingleTrait {
@@ -225,9 +217,6 @@ extension PrimitiveSequenceType where ElementType == Any, TraitType == MaybeTrai
     }
 }
 
-
-
-
 // 5
 
 extension PrimitiveSequenceType where TraitType == SingleTrait {
@@ -298,9 +287,6 @@ extension PrimitiveSequenceType where ElementType == Any, TraitType == MaybeTrai
     }
 }
 
-
-
-
 // 6
 
 extension PrimitiveSequenceType where TraitType == SingleTrait {
@@ -371,9 +357,6 @@ extension PrimitiveSequenceType where ElementType == Any, TraitType == MaybeTrai
     }
 }
 
-
-
-
 // 7
 
 extension PrimitiveSequenceType where TraitType == SingleTrait {
@@ -444,9 +427,6 @@ extension PrimitiveSequenceType where ElementType == Any, TraitType == MaybeTrai
     }
 }
 
-
-
-
 // 8
 
 extension PrimitiveSequenceType where TraitType == SingleTrait {
@@ -516,6 +496,3 @@ extension PrimitiveSequenceType where ElementType == Any, TraitType == MaybeTrai
             )
     }
 }
-
-
-
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence.swift
index 73e98145a35fbcb502ff00f53a760270ffed7fd5..751357ce853828e02c26d6dfbb5aecdffa7b5b23 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/PrimitiveSequence.swift
@@ -97,7 +97,7 @@ extension PrimitiveSequence {
         -> PrimitiveSequence<Trait, Element> {
         return PrimitiveSequence(raw: source.delaySubscription(dueTime, scheduler: scheduler))
     }
-    
+
     /**
      Wraps the source sequence in order to run its observer callbacks on the specified scheduler.
 
@@ -201,7 +201,7 @@ extension PrimitiveSequence {
         -> PrimitiveSequence<Trait, Element> {
             return PrimitiveSequence(raw: source.debug(identifier, trimOutput: trimOutput, file: file, line: line, function: function))
     }
-    
+
     /**
      Constructs an observable sequence that depends on a resource object, whose lifetime is tied to the resulting observable sequence's lifetime.
      
@@ -228,10 +228,10 @@ extension PrimitiveSequence {
      - returns: An observable sequence with a `RxError.timeout` in case of a timeout.
      */
     public func timeout(_ dueTime: RxTimeInterval, scheduler: SchedulerType)
-        -> PrimitiveSequence<Trait, Element>  {
+        -> PrimitiveSequence<Trait, Element> {
             return PrimitiveSequence<Trait, Element>(raw: primitiveSequence.source.timeout(dueTime, scheduler: scheduler))
     }
-    
+
     /**
      Applies a timeout policy for each element in the observable sequence, using the specified scheduler to run timeout timers. If the next element isn't received within the specified timeout duration starting from its predecessor, the other observable sequence is used to produce future messages from that point on.
      
@@ -249,8 +249,7 @@ extension PrimitiveSequence {
     }
 }
 
-extension PrimitiveSequenceType where ElementType: RxAbstractInteger
-{
+extension PrimitiveSequenceType where ElementType: RxAbstractInteger {
     /**
      Returns an observable sequence that periodically produces a value after the specified initial relative due time has elapsed, using the specified scheduler to run timers.
 
@@ -261,7 +260,7 @@ extension PrimitiveSequenceType where ElementType: RxAbstractInteger
      - returns: An observable sequence that produces a value after due time has elapsed and then each period.
      */
     public static func timer(_ dueTime: RxTimeInterval, scheduler: SchedulerType)
-        -> PrimitiveSequence<TraitType, ElementType>  {
+        -> PrimitiveSequence<TraitType, ElementType> {
         return PrimitiveSequence(raw: Observable<ElementType>.timer(dueTime, scheduler: scheduler))
     }
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Single.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Single.swift
index c9dc13f1ed3b31b668f216e80e39e05866018c6f..78c89c3851e68790efae19782bded8473d25768c 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Single.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Traits/Single.swift
@@ -18,14 +18,14 @@ public typealias Single<Element> = PrimitiveSequence<SingleTrait, Element>
 public enum SingleEvent<Element> {
     /// One and only sequence element is produced. (underlying observable sequence emits: `.next(Element)`, `.completed`)
     case success(Element)
-    
+
     /// Sequence terminated with an error. (underlying observable sequence emits: `.error(Error)`)
     case error(Swift.Error)
 }
 
 extension PrimitiveSequenceType where TraitType == SingleTrait {
-    public typealias SingleObserver = (SingleEvent<ElementType>) -> ()
-    
+    public typealias SingleObserver = (SingleEvent<ElementType>) -> Void
+
     /**
      Creates an observable sequence from a specified subscribe method implementation.
      
@@ -46,22 +46,21 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
                 }
             }
         }
-        
+
         return PrimitiveSequence(raw: source)
     }
-    
-    
+
     /**
      Subscribes `observer` to receive events for this sequence.
      
      - returns: Subscription for `observer` that can be used to cancel production of sequence elements and free resources.
      */
-    public func subscribe(_ observer: @escaping (SingleEvent<ElementType>) -> ()) -> Disposable {
+    public func subscribe(_ observer: @escaping (SingleEvent<ElementType>) -> Void) -> Disposable {
         var stopped = false
         return self.primitiveSequence.asObservable().subscribe { event in
             if stopped { return }
             stopped = true
-            
+
             switch event {
             case .next(let element):
                 observer(.success(element))
@@ -72,7 +71,7 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
             }
         }
     }
-    
+
     /**
      Subscribes a success handler, and an error handler for this sequence.
      
@@ -86,7 +85,7 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
         #else
             let callStack = [String]()
         #endif
-    
+
         return self.primitiveSequence.subscribe { event in
             switch event {
             case .success(let element):
@@ -114,7 +113,7 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
     public static func just(_ element: ElementType) -> Single<ElementType> {
         return Single(raw: Observable.just(element))
     }
-    
+
     /**
      Returns an observable sequence that contains a single element.
      
@@ -167,9 +166,9 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
      */
     public func `do`(onSuccess: ((ElementType) throws -> Void)? = nil,
                      onError: ((Swift.Error) throws -> Void)? = nil,
-                     onSubscribe: (() -> ())? = nil,
-                     onSubscribed: (() -> ())? = nil,
-                     onDispose: (() -> ())? = nil)
+                     onSubscribe: (() -> Void)? = nil,
+                     onSubscribed: (() -> Void)? = nil,
+                     onDispose: (() -> Void)? = nil)
         -> Single<ElementType> {
             return Single(raw: primitiveSequence.source.do(
                 onNext: onSuccess,
@@ -195,9 +194,9 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
     @available(*, deprecated, renamed: "do(onSuccess:onError:onSubscribe:onSubscribed:onDispose:)")
     public func `do`(onNext: ((ElementType) throws -> Void)?,
                      onError: ((Swift.Error) throws -> Void)? = nil,
-                     onSubscribe: (() -> ())? = nil,
-                     onSubscribed: (() -> ())? = nil,
-                     onDispose: (() -> ())? = nil)
+                     onSubscribe: (() -> Void)? = nil,
+                     onSubscribed: (() -> Void)? = nil,
+                     onDispose: (() -> Void)? = nil)
         -> Single<ElementType> {
             return `do`(
                 onSuccess: onNext,
@@ -207,7 +206,7 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
                 onDispose: onDispose
             )
     }
-    
+
     /**
      Filters the elements of an observable sequence based on a predicate.
      
@@ -220,8 +219,7 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
         -> Maybe<ElementType> {
             return Maybe(raw: primitiveSequence.source.filter(predicate))
     }
-    
-    
+
     /**
      Projects each element of an observable sequence into a new form.
      
@@ -235,7 +233,7 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
         -> Single<R> {
             return Single(raw: primitiveSequence.source.map(transform))
     }
-    
+
     /**
      Projects each element of an observable sequence to an observable sequence and merges the resulting observable sequences into one observable sequence.
      
@@ -282,28 +280,28 @@ extension PrimitiveSequenceType where TraitType == SingleTrait {
      - returns: An observable sequence containing the result of combining elements of the sources using the specified result selector function.
      */
     public static func zip<C: Collection, R>(_ collection: C, _ resultSelector: @escaping ([ElementType]) throws -> R) -> PrimitiveSequence<TraitType, R> where C.Iterator.Element == PrimitiveSequence<TraitType, ElementType> {
-        
+
         if collection.isEmpty {
             return PrimitiveSequence<TraitType, R>.deferred {
                 return PrimitiveSequence<TraitType, R>(raw: .just(try resultSelector([])))
             }
         }
-        
+
         let raw = Observable.zip(collection.map { $0.asObservable() }, resultSelector)
         return PrimitiveSequence<TraitType, R>(raw: raw)
     }
-    
+
     /**
      Merges the specified observable sequences into one observable sequence all of the observable sequences have produced an element at a corresponding index.
      
      - returns: An observable sequence containing the result of combining elements of the sources.
      */
     public static func zip<C: Collection>(_ collection: C) -> PrimitiveSequence<TraitType, [ElementType]> where C.Iterator.Element == PrimitiveSequence<TraitType, ElementType> {
-        
+
         if collection.isEmpty {
             return PrimitiveSequence<TraitType, [ElementType]>(raw: .just([]))
         }
-        
+
         let raw = Observable.zip(collection.map { $0.asObservable() })
         return PrimitiveSequence(raw: raw)
     }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient/AppDelegate.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient/AppDelegate.swift
index e19be16160e3cedab27e24f598ce59d89bcb510b..e8f911b0fa1d8be2b1769772903d2f8ba593f370 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient/AppDelegate.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient/AppDelegate.swift
@@ -13,7 +13,6 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
 
     var window: UIWindow?
 
-
     func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
         // Override point for customization after application launch.
         return true
@@ -41,5 +40,4 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
         // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
     }
 
-
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient/ViewController.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient/ViewController.swift
index 14180180be448d8f1863af3168405bbc2ca7bc6c..3a45ba8fc53404245dc45c63aefb9bcc3a2ab1d2 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient/ViewController.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient/ViewController.swift
@@ -20,5 +20,4 @@ class ViewController: UIViewController {
         // Dispose of any resources that can be recreated.
     }
 
-
 }
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/APIHelperTests.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/APIHelperTests.swift
index 0f2ae9f9ffcbcde1bc72c19a5ce65b5b62fc2e88..4f51881a66639bbf3e4ee6266898552a5efc6f88 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/APIHelperTests.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/APIHelperTests.swift
@@ -11,17 +11,17 @@ import PetstoreClient
 @testable import SwaggerClient
 
 class APIHelperTests: XCTestCase {
-    
+
     override func setUp() {
         super.setUp()
         // Put setup code here. This method is called before the invocation of each test method in the class.
     }
-    
+
     override func tearDown() {
         // Put teardown code here. This method is called after the invocation of each test method in the class.
         super.tearDown()
     }
-    
+
     func testRejectNil() {
         let source: [String: Any?] = ["a": 1, "b": nil, "c": ["1", nil, "2"], "d": true, "e": false]
         let expected: [String: Any] = ["a": 1, "c": ["1", nil, "2"], "d": true, "e": false]
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift
index 99f4e85eac7af7de34021550bf08490d3b2f2c32..5b759947421d988ba55e402b480fb3c002ce371e 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/PetAPITests.swift
@@ -34,7 +34,7 @@ class PetAPITests: XCTestCase {
 
         PetAPI.addPet(body: newPet).subscribe(onNext: {
             expectation.fulfill()
-            }, onError: { errorType in
+            }, onError: { _ in
                 XCTFail("error creating pet")
             }).disposed(by: disposeBag)
         self.waitForExpectations(timeout: testTimeout, handler: nil)
@@ -60,7 +60,7 @@ class PetAPITests: XCTestCase {
             XCTAssert(pet.photoUrls[1] == "https://petstore.com/sample/photo2.jpg")
 
             expectation.fulfill()
-            }, onError: { errorType in
+            }, onError: { _ in
                 XCTFail("error getting pet")
         }).disposed(by: disposeBag)
         self.waitForExpectations(timeout: testTimeout, handler: nil)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift
index 97db90b226336404379a56be48a04f994899aef1..730f5c134eb08c7160425bf8b5b776f0bfdf6397 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/StoreAPITests.swift
@@ -32,7 +32,7 @@ class StoreAPITests: XCTestCase {
             XCTAssert(order.complete == true, "invalid complete")
 
             expectation.fulfill()
-        }, onError: { errorType in
+        }, onError: { _ in
             XCTFail("error placing order")
         }).disposed(by: disposeBag)
         self.waitForExpectations(timeout: testTimeout, handler: nil)
@@ -46,7 +46,7 @@ class StoreAPITests: XCTestCase {
             XCTAssert(order.status == .placed, "invalid status")
             XCTAssert(order.complete == true, "invalid complete")
             expectation.fulfill()
-            }, onError: { errorType in
+            }, onError: { _ in
                 XCTFail("error placing order")
         }).disposed(by: disposeBag)
         self.waitForExpectations(timeout: testTimeout, handler: nil)
diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift
index fbe9c68db3a7f350c00f3566d2ee0e93f51e992c..ae0994fa82337a5946930f78ea62c635fcdc5cbd 100644
--- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift
+++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClientTests/UserAPITests.swift
@@ -96,7 +96,7 @@ class UserAPITests: XCTestCase {
             XCTAssert(user.password == "test!", "invalid password")
             XCTAssert(user.phone == "867-5309", "invalid phone")
             expectation.fulfill()
-            }, onError: { errorType in
+            }, onError: { _ in
                 XCTFail("error getting user")
             }).disposed(by: disposeBag)
         self.waitForExpectations(timeout: testTimeout, handler: nil)
diff --git a/samples/client/petstore/swift4/rxswift/docs/CatAllOf.md b/samples/client/petstore/swift4/rxswift/docs/CatAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..79789be61c01631cd56d3925bd31a17533bcbf88
--- /dev/null
+++ b/samples/client/petstore/swift4/rxswift/docs/CatAllOf.md
@@ -0,0 +1,10 @@
+# CatAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**declawed** | **Bool** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/rxswift/docs/DogAllOf.md b/samples/client/petstore/swift4/rxswift/docs/DogAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..9302ef52e938a092420c1a71707d79ca92464fb2
--- /dev/null
+++ b/samples/client/petstore/swift4/rxswift/docs/DogAllOf.md
@@ -0,0 +1,10 @@
+# DogAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**breed** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/rxswift/docs/UserAPI.md b/samples/client/petstore/swift4/rxswift/docs/UserAPI.md
index b5b1f40b47d47df8c9aaafe026f034418782b2c1..a707c7085a37e4f8c3e5f31c87263966cefc681c 100644
--- a/samples/client/petstore/swift4/rxswift/docs/UserAPI.md
+++ b/samples/client/petstore/swift4/rxswift/docs/UserAPI.md
@@ -75,7 +75,7 @@ let body = [User(id: 123, username: "username_example", firstName: "firstName_ex
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
@@ -113,7 +113,7 @@ let body = [User(id: 123, username: "username_example", firstName: "firstName_ex
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
diff --git a/samples/client/petstore/swift4/rxswift/project.yml b/samples/client/petstore/swift4/rxswift/project.yml
new file mode 100644
index 0000000000000000000000000000000000000000..3f2e1286ba546b0faf3f2f162e88f779c8f82a2d
--- /dev/null
+++ b/samples/client/petstore/swift4/rxswift/project.yml
@@ -0,0 +1,16 @@
+name: PetstoreClient
+targets:
+  PetstoreClient:
+    type: framework
+    platform: iOS
+    deploymentTarget: "10.0"
+    sources: [PetstoreClient]
+    info:
+      path: ./Info.plist
+      version: 1.0.0
+    settings:
+      APPLICATION_EXTENSION_API_ONLY: true
+    scheme: {}
+    dependencies:
+    - carthage: Alamofire
+    - carthage: RxSwift
diff --git a/samples/client/petstore/swift4/unwrapRequired/.openapi-generator/VERSION b/samples/client/petstore/swift4/unwrapRequired/.openapi-generator/VERSION
index afa6365606414bf56f925745712166af5b4a2be0..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/petstore/swift4/unwrapRequired/.openapi-generator/VERSION
+++ b/samples/client/petstore/swift4/unwrapRequired/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.0-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/swift4/unwrapRequired/Info.plist b/samples/client/petstore/swift4/unwrapRequired/Info.plist
new file mode 100644
index 0000000000000000000000000000000000000000..323e5ecfc420ad71d4ea6890405ca4af8a03bafd
--- /dev/null
+++ b/samples/client/petstore/swift4/unwrapRequired/Info.plist
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>$(DEVELOPMENT_LANGUAGE)</string>
+	<key>CFBundleExecutable</key>
+	<string>$(EXECUTABLE_NAME)</string>
+	<key>CFBundleIdentifier</key>
+	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>$(PRODUCT_NAME)</string>
+	<key>CFBundlePackageType</key>
+	<string>FMWK</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleVersion</key>
+	<string>1</string>
+</dict>
+</plist>
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000000000000000000000000000000000..55021e5d191a647e392c49f6d0b550bbd2be0f0f
--- /dev/null
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.xcodeproj/project.pbxproj
@@ -0,0 +1,601 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 50;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */; };
+		0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */; };
+		08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */; };
+		08F5828F0C2BCF07A9E4917DBBB993AE /* AdditionalPropertiesInteger.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA2F3566156A4ABC465F201B4A1F6227 /* AdditionalPropertiesInteger.swift */; };
+		1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */; };
+		122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */; };
+		12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */; };
+		12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */; };
+		16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */; };
+		18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 212AA914B7F1793A4E32C119370FB05F /* Cat.swift */; };
+		196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */; };
+		271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */; };
+		293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */; };
+		297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */; };
+		2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */; };
+		2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */; };
+		3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */; };
+		36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */; };
+		39F9FBA1AC5C2612ECA1FF715EBFC287 /* AdditionalPropertiesString.swift in Sources */ = {isa = PBXBuildFile; fileRef = FFE215C1B526E0418ED301B15357B970 /* AdditionalPropertiesString.swift */; };
+		3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */; };
+		41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */; };
+		42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */; };
+		491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */; };
+		4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */; };
+		52B5604F986335DB69CD2B430FB83BAB /* AdditionalPropertiesAnyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5AB1037D937AADF8B4A70C96D5E5D61 /* AdditionalPropertiesAnyType.swift */; };
+		58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */; };
+		59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */; };
+		59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */; };
+		59EAB3527305A37ED99FB210045B69EA /* AdditionalPropertiesNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E0512B3582586B4C0C598D5DB1C0D39 /* AdditionalPropertiesNumber.swift */; };
+		5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */; };
+		655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */; };
+		6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */; };
+		6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */; };
+		7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */; };
+		82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */; };
+		83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */; };
+		92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = A913A57E72D723632E9A718FF4525C81 /* Client.swift */; };
+		97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */; };
+		988F461F59E4E1091156840007CB3773 /* AdditionalPropertiesBoolean.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CC24C01A55F644957196F9F81D10F81 /* AdditionalPropertiesBoolean.swift */; };
+		A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */; };
+		A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */; };
+		A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */; };
+		AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */; };
+		B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */; };
+		BB02FDCF1B2B0E457E1C2BF39FBB599D /* XmlItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */; };
+		BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */; };
+		C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */; };
+		C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A6070F581E611FF44AFD40A4315C49A /* List.swift */; };
+		C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */; };
+		C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */; };
+		D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */; };
+		D68F23CD4B5178493CE7AE8DFB868EAE /* AdditionalPropertiesArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FEE553331890581C2FF366F9EA0956D /* AdditionalPropertiesArray.swift */; };
+		D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */; };
+		DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */; };
+		DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */; };
+		DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */; };
+		DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */; };
+		E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 386FD590658E90509C121118F057604D /* SpecialModelName.swift */; };
+		E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */; };
+		E57CD12D2F500D40B4135D0F5ECA9866 /* AdditionalPropertiesObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72FEDC94BA0E37214D360871B284BC8A /* AdditionalPropertiesObject.swift */; };
+		F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8699F7966F748ED026A6FB4CF550442B /* Models.swift */; };
+		F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = C81447828475F76C5CF4F08AA65292F7 /* Return.swift */; };
+		FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */; };
+		FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+		02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodableHelper.swift; sourceTree = "<group>"; };
+		0CC24C01A55F644957196F9F81D10F81 /* AdditionalPropertiesBoolean.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesBoolean.swift; sourceTree = "<group>"; };
+		10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = "<group>"; };
+		164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderExample.swift; sourceTree = "<group>"; };
+		1E0512B3582586B4C0C598D5DB1C0D39 /* AdditionalPropertiesNumber.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesNumber.swift; sourceTree = "<group>"; };
+		212AA914B7F1793A4E32C119370FB05F /* Cat.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = "<group>"; };
+		27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = "<group>"; };
+		28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = "<group>"; };
+		3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = "<group>"; };
+		35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodingHelper.swift; sourceTree = "<group>"; };
+		37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIs.swift; sourceTree = "<group>"; };
+		386FD590658E90509C121118F057604D /* SpecialModelName.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = "<group>"; };
+		3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = "<group>"; };
+		396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CatAllOf.swift; sourceTree = "<group>"; };
+		3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = "<group>"; };
+		47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = "<group>"; };
+		4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = "<group>"; };
+		4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = "<group>"; };
+		4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = "<group>"; };
+		4FEE553331890581C2FF366F9EA0956D /* AdditionalPropertiesArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesArray.swift; sourceTree = "<group>"; };
+		5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = "<group>"; };
+		6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = "<group>"; };
+		6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = "<group>"; };
+		6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = "<group>"; };
+		72FEDC94BA0E37214D360871B284BC8A /* AdditionalPropertiesObject.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesObject.swift; sourceTree = "<group>"; };
+		7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = "<group>"; };
+		7A6070F581E611FF44AFD40A4315C49A /* List.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = "<group>"; };
+		7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = "<group>"; };
+		82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = "<group>"; };
+		84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlamofireImplementations.swift; sourceTree = "<group>"; };
+		8699F7966F748ED026A6FB4CF550442B /* Models.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Models.swift; sourceTree = "<group>"; };
+		897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIHelper.swift; sourceTree = "<group>"; };
+		8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = "<group>"; };
+		95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = "<group>"; };
+		9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodableEncoding.swift; sourceTree = "<group>"; };
+		9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = "<group>"; };
+		9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = "<group>"; };
+		9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = "<group>"; };
+		A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DogAllOf.swift; sourceTree = "<group>"; };
+		A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XmlItem.swift; sourceTree = "<group>"; };
+		A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Alamofire.framework; sourceTree = "<group>"; };
+		A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = "<group>"; };
+		A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = "<group>"; };
+		A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = "<group>"; };
+		A913A57E72D723632E9A718FF4525C81 /* Client.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = "<group>"; };
+		B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = "<group>"; };
+		B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = "<group>"; };
+		B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = "<group>"; };
+		B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = "<group>"; };
+		B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = "<group>"; };
+		C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = "<group>"; };
+		C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = "<group>"; };
+		C81447828475F76C5CF4F08AA65292F7 /* Return.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = "<group>"; };
+		E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = "<group>"; };
+		EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderDefault.swift; sourceTree = "<group>"; };
+		ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = "<group>"; };
+		F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = "<group>"; };
+		F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = "<group>"; };
+		F5AB1037D937AADF8B4A70C96D5E5D61 /* AdditionalPropertiesAnyType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesAnyType.swift; sourceTree = "<group>"; };
+		FA2F3566156A4ABC465F201B4A1F6227 /* AdditionalPropertiesInteger.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesInteger.swift; sourceTree = "<group>"; };
+		FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = "<group>"; };
+		FFE215C1B526E0418ED301B15357B970 /* AdditionalPropertiesString.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesString.swift; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				4C28BFEC5E7C8150DEFD83E09C1A1D32 /* Alamofire.framework in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				7861EE241895128F64DD787367B3022D /* Carthage */,
+			);
+			name = Frameworks;
+			sourceTree = "<group>";
+		};
+		4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */ = {
+			isa = PBXGroup;
+			children = (
+				F5AB1037D937AADF8B4A70C96D5E5D61 /* AdditionalPropertiesAnyType.swift */,
+				4FEE553331890581C2FF366F9EA0956D /* AdditionalPropertiesArray.swift */,
+				0CC24C01A55F644957196F9F81D10F81 /* AdditionalPropertiesBoolean.swift */,
+				396DEF3156BA0D12D0FC5C3C3AAF52C4 /* AdditionalPropertiesClass.swift */,
+				FA2F3566156A4ABC465F201B4A1F6227 /* AdditionalPropertiesInteger.swift */,
+				1E0512B3582586B4C0C598D5DB1C0D39 /* AdditionalPropertiesNumber.swift */,
+				72FEDC94BA0E37214D360871B284BC8A /* AdditionalPropertiesObject.swift */,
+				FFE215C1B526E0418ED301B15357B970 /* AdditionalPropertiesString.swift */,
+				95568E7C35F119EB4A12B4982B3FB31F /* Animal.swift */,
+				8D22BE01748F51106DE0233299A9061E /* AnimalFarm.swift */,
+				A8E7B833748B4F0C7CDA90C6E500B199 /* ApiResponse.swift */,
+				7B1B8B838B5D9D312F2002EBAD946378 /* ArrayOfArrayOfNumberOnly.swift */,
+				B65BB72353DA24536A9049BEC3D234C8 /* ArrayOfNumberOnly.swift */,
+				F1A0379CDFC55705AE76C99867B8DB08 /* ArrayTest.swift */,
+				A7B38FA00A494D13F4C382A3D87FBF59 /* Capitalization.swift */,
+				212AA914B7F1793A4E32C119370FB05F /* Cat.swift */,
+				3AD0F94F512DFBC09F9CC79AF4BD9BFD /* CatAllOf.swift */,
+				6F2985D01F8D60A4B1925C694330E6CB /* Category.swift */,
+				3C30827D8EAF8EA684E7BCEA5A1E93B2 /* ClassModel.swift */,
+				A913A57E72D723632E9A718FF4525C81 /* Client.swift */,
+				C6C3E1129526A353B963EFD74ED8419C /* Dog.swift */,
+				A21A69C8402A60E01116ABBDEE8943DB /* DogAllOf.swift */,
+				10503995D9EFD031A2EFB57603B3132E /* EnumArrays.swift */,
+				4B2C97AE6ACA1E5FB88F5BAA2DB76FDC /* EnumClass.swift */,
+				FD60AEA646791E0EDE885DE1E680A687 /* EnumTest.swift */,
+				3933D3B2A3AC4577094D0C23D1C1B266 /* File.swift */,
+				4B3666552AA854DAF9C480A3354C9D7C /* FileSchemaTestClass.swift */,
+				3156CE41C001C80379B84BDB435DECCB /* FormatTest.swift */,
+				4C7FBC641752D2E13B15097311139DDC /* HasOnlyReadOnly.swift */,
+				7A6070F581E611FF44AFD40A4315C49A /* List.swift */,
+				7986861626C2B1CB49AD7000C6343270 /* MapTest.swift */,
+				9AD714C7CC59BDD18DE8DF4ED40B9DA9 /* MixedPropertiesAndAdditionalPropertiesClass.swift */,
+				82A2C3DC2235F0114C2B08E553F46874 /* Model200Response.swift */,
+				5AD994DFAA0DA93C188A4DBA16688767 /* Name.swift */,
+				B8E0B16084741FCB82389F5854AC5E26 /* NumberOnly.swift */,
+				27B2E9EF856E89FEAA359A3AC4A2CF5D /* Order.swift */,
+				F4E0AD8F60A91F72C768756002C14BF9 /* OuterComposite.swift */,
+				C15008AABC804EB6FB4CDAC6B871E6B0 /* OuterEnum.swift */,
+				ECFEB4C6C257B3BB3CEA36D10A5EDC17 /* Pet.swift */,
+				6FD42727E001E799E458C2924CF813CC /* ReadOnlyFirst.swift */,
+				C81447828475F76C5CF4F08AA65292F7 /* Return.swift */,
+				386FD590658E90509C121118F057604D /* SpecialModelName.swift */,
+				47B4DEBABEFE140768CFB70B19D23029 /* StringBooleanMap.swift */,
+				B2896F8BFD1AA2965C8A30158F0EDA8C /* Tag.swift */,
+				EBC76F6D4D2AA8084B7EB50E5C15E475 /* TypeHolderDefault.swift */,
+				19B65C66C97F082718DDD703F39DE1C2 /* TypeHolderExample.swift */,
+				E5565A447062C7B8F695F4517DB5E4A5 /* User.swift */,
+				A2253391845B73B8BA3680491575CC07 /* XmlItem.swift */,
+			);
+			path = Models;
+			sourceTree = "<group>";
+		};
+		5FBA6AE5F64CD737F88B4565AC3CCD3B = {
+			isa = PBXGroup;
+			children = (
+				9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */,
+				1E464C0937FE0D3A7A0FE29AF446553C /* Frameworks */,
+				857F0DEA1890CE66D6DAD556C55821A6 /* Products */,
+			);
+			sourceTree = "<group>";
+		};
+		67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */ = {
+			isa = PBXGroup;
+			children = (
+				84A201508DF2B697D65F263189C08721 /* AlamofireImplementations.swift */,
+				897716962D472FE162B723CB713AA6D3 /* APIHelper.swift */,
+				37DF825B8F3BADA2B2537D17CDC48633 /* APIs.swift */,
+				02A6F6BB2152ACEE1416D44AB3955243 /* CodableHelper.swift */,
+				28A444949BBC254798C3B3DD14AAF2CD /* Configuration.swift */,
+				B8C298FC8929DCB369053F118D7DF28F /* Extensions.swift */,
+				9791B840B8D6EAA35343B00FA277963A /* JSONEncodableEncoding.swift */,
+				35D710108A69DD8A5297F926A66DA21F /* JSONEncodingHelper.swift */,
+				8699F7966F748ED026A6FB4CF550442B /* Models.swift */,
+				F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */,
+				4FBDCF1330A9AB9122780DB3FA21DE4C /* Models */,
+			);
+			path = OpenAPIs;
+			sourceTree = "<group>";
+		};
+		7861EE241895128F64DD787367B3022D /* Carthage */ = {
+			isa = PBXGroup;
+			children = (
+				A012205B41CB71A62B86EECDEAFB0990 /* iOS */,
+			);
+			name = Carthage;
+			path = Carthage/Build;
+			sourceTree = "<group>";
+		};
+		857F0DEA1890CE66D6DAD556C55821A6 /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+		9B364C01750D7AA4F983B9E77B01BCC6 /* PetstoreClient */ = {
+			isa = PBXGroup;
+			children = (
+				EF4C81BDD734856ED5023B777D35098B /* Classes */,
+			);
+			path = PetstoreClient;
+			sourceTree = "<group>";
+		};
+		A012205B41CB71A62B86EECDEAFB0990 /* iOS */ = {
+			isa = PBXGroup;
+			children = (
+				A235FA3FDFB086CC69CDE83DFC1F4BC9 /* Alamofire.framework */,
+			);
+			path = iOS;
+			sourceTree = "<group>";
+		};
+		EF4C81BDD734856ED5023B777D35098B /* Classes */ = {
+			isa = PBXGroup;
+			children = (
+				67BF3478113E6B4DF1C4E04F40BF58C4 /* OpenAPIs */,
+			);
+			path = Classes;
+			sourceTree = "<group>";
+		};
+		F956D0CCAE23BCFD1C7BDD5D47944AA5 /* APIs */ = {
+			isa = PBXGroup;
+			children = (
+				9DF24D2714B9C4CF14146E88FDDC01A5 /* AnotherFakeAPI.swift */,
+				6E00950725DC44436C5E238CDD2EC164 /* FakeAPI.swift */,
+				B42354B407EC173BEB54E0429D946F3B /* FakeClassnameTags123API.swift */,
+				9A019F500E546A3292CE716AB967C673 /* PetAPI.swift */,
+				A53274D99BBDE1B79BF3521CD7CBC276 /* StoreAPI.swift */,
+				7C8D5F382979854D47F18DB1543680FE /* UserAPI.swift */,
+			);
+			path = APIs;
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+		C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */;
+			buildPhases = (
+				E539708354CE60FE486F81EDE56D13C8 /* Sources */,
+				D1990C2A394CCF025EF98A2FB828C79A /* Frameworks */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = PetstoreClient;
+			productName = PetstoreClient;
+			productReference = 164AD6EC9C4CCF634D7C45905E99E3A7 /* PetstoreClient.framework */;
+			productType = "com.apple.product-type.framework";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		E7D276EE2369D8C455513C2E05F9AED0 /* Project object */ = {
+			isa = PBXProject;
+			attributes = {
+				LastUpgradeCheck = 1000;
+			};
+			buildConfigurationList = ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */;
+			compatibilityVersion = "Xcode 9.3";
+			developmentRegion = en;
+			hasScannedForEncodings = 0;
+			knownRegions = (
+				en,
+			);
+			mainGroup = 5FBA6AE5F64CD737F88B4565AC3CCD3B;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+				C1282C2230015E0D204BEAEDDFB49453 /* PetstoreClient */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXSourcesBuildPhase section */
+		E539708354CE60FE486F81EDE56D13C8 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				2A35688C985E9CB1EB7732AC2AD46B82 /* APIHelper.swift in Sources */,
+				0462F801432CF94C7EF51D0532737A7E /* APIs.swift in Sources */,
+				52B5604F986335DB69CD2B430FB83BAB /* AdditionalPropertiesAnyType.swift in Sources */,
+				D68F23CD4B5178493CE7AE8DFB868EAE /* AdditionalPropertiesArray.swift in Sources */,
+				988F461F59E4E1091156840007CB3773 /* AdditionalPropertiesBoolean.swift in Sources */,
+				12327BF7304AA897C5D2A1250B1659B7 /* AdditionalPropertiesClass.swift in Sources */,
+				08F5828F0C2BCF07A9E4917DBBB993AE /* AdditionalPropertiesInteger.swift in Sources */,
+				59EAB3527305A37ED99FB210045B69EA /* AdditionalPropertiesNumber.swift in Sources */,
+				E57CD12D2F500D40B4135D0F5ECA9866 /* AdditionalPropertiesObject.swift in Sources */,
+				39F9FBA1AC5C2612ECA1FF715EBFC287 /* AdditionalPropertiesString.swift in Sources */,
+				58F9704B295AC436D6FB98FA669E2344 /* AlamofireImplementations.swift in Sources */,
+				02903CEC38DC202565BC08CB040AC4E9 /* Animal.swift in Sources */,
+				DB1CE39011A741D07E187663291B5DE5 /* AnimalFarm.swift in Sources */,
+				83A2D1863FB136C0DFC423319F4EED65 /* AnotherFakeAPI.swift in Sources */,
+				97C99615237E1B662242E04F527B38B9 /* ApiResponse.swift in Sources */,
+				3251A3722981CE46261615CFBA96A08D /* ArrayOfArrayOfNumberOnly.swift in Sources */,
+				A190AF5A3988639ED4B78163D0EA3CA4 /* ArrayOfNumberOnly.swift in Sources */,
+				C2EDEB747887399B13A6DFD72A219CB2 /* ArrayTest.swift in Sources */,
+				7367A9D91D4B101F2D28AC56ED89F175 /* Capitalization.swift in Sources */,
+				18F19872A0DFB4CC3D9C696BBCA64EFD /* Cat.swift in Sources */,
+				41D8A105135868152A56E2AC475049BB /* CatAllOf.swift in Sources */,
+				42C51BC034E8B0CAA29A068F6B0DC815 /* Category.swift in Sources */,
+				5ACDD7CC312167589335E9CA5998E770 /* ClassModel.swift in Sources */,
+				92FB161BF1E57D11B116AF0292D5835C /* Client.swift in Sources */,
+				6CD20EE568DDAD2304BF0C4B1A70C8DC /* CodableHelper.swift in Sources */,
+				DEC892724574BB29BD65869374F83982 /* Configuration.swift in Sources */,
+				D70EC94E346077DE1482231DD4498BED /* Dog.swift in Sources */,
+				271D94A05C47B602A2433B9CD3D9DCDC /* DogAllOf.swift in Sources */,
+				A438970025AE69ED407BC1E67CC6359E /* EnumArrays.swift in Sources */,
+				59C00CBB07761CAC8DCE7054E34AD5D9 /* EnumClass.swift in Sources */,
+				08D87E4FECF24910F0DA0F1D2E2D955A /* EnumTest.swift in Sources */,
+				C329EE55B2FCC9174ED3B128D67C5E8C /* Extensions.swift in Sources */,
+				297E365D1E4672C43C56E0AFD855FFBF /* FakeAPI.swift in Sources */,
+				A9F1AAF6CE029DD3B4F8AC841F0B6BC6 /* FakeClassnameTags123API.swift in Sources */,
+				FECA03F0388E84AE1B22638605D8AC9F /* File.swift in Sources */,
+				491676EC91BFEF95A12556888EED87B5 /* FileSchemaTestClass.swift in Sources */,
+				36734C4EB3362A114A7CB5F25EE39E6D /* FormatTest.swift in Sources */,
+				DDBC3CF5E447D8D838F0FE200420EEE3 /* HasOnlyReadOnly.swift in Sources */,
+				16E9A5E22B4823DE282E7F4C18A21EA8 /* JSONEncodableEncoding.swift in Sources */,
+				12BB95C66D63090732BB9E0379836E3C /* JSONEncodingHelper.swift in Sources */,
+				C1CACABE18A7ADCE37D1CD9DC9128304 /* List.swift in Sources */,
+				655AA371771C7BD72EE0AAC0C90DFFF0 /* MapTest.swift in Sources */,
+				D3A17B7FAFA8A7A210875BBCDCC30116 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */,
+				2DF4544D4D3D6CF7047A59FB89ED31BD /* Model200Response.swift in Sources */,
+				F02BEF9A8503B3848B045370451E85F6 /* Models.swift in Sources */,
+				C15AC1CC631E96D0360EB8C15BF30452 /* Name.swift in Sources */,
+				AE9D2E1DB59AF6575AC4AC6756C5A937 /* NumberOnly.swift in Sources */,
+				59C2F5495C98836BFA9E10BF5C13BC2C /* Order.swift in Sources */,
+				82D4D0C8AD0354A700C8ACD421ABED55 /* OuterComposite.swift in Sources */,
+				1143FFF06DEE01E5B0F1368AA05BE1B4 /* OuterEnum.swift in Sources */,
+				B399A1742F23330FDCA450EAB98F51F1 /* Pet.swift in Sources */,
+				3D8E407B1DF4FA5A5F16B64E3A285781 /* PetAPI.swift in Sources */,
+				293F4E0FBFC8297E414A3CDBB7F29A96 /* ReadOnlyFirst.swift in Sources */,
+				F21D10C71A9DE7D0467AFD23FD391D2E /* Return.swift in Sources */,
+				E2C40F0E34DB8C21A806262C72841A51 /* SpecialModelName.swift in Sources */,
+				122BBAE8245606CC040EEB6B9254E376 /* StoreAPI.swift in Sources */,
+				196E9846B27D736630CCF90497696859 /* StringBooleanMap.swift in Sources */,
+				E51ADEC931806B20A041303E539A8BE2 /* Tag.swift in Sources */,
+				6600BB1500AE35A3C80F7C83F6444552 /* TypeHolderDefault.swift in Sources */,
+				FB4A053CDCD75E48B755CC22D463A3FC /* TypeHolderExample.swift in Sources */,
+				BF7D58FBCF5E4D3F2932FCC0E62BED40 /* User.swift in Sources */,
+				DB724C4F1AD5DF025B53A9A2E0A49E3D /* UserAPI.swift in Sources */,
+				BB02FDCF1B2B0E457E1C2BF39FBB599D /* XmlItem.swift in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+		3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Release;
+		};
+		A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_TESTABILITY = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"$(inherited)",
+					"DEBUG=1",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+				SWIFT_VERSION = 4.2;
+			};
+			name = Debug;
+		};
+		DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Debug;
+		};
+		F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
+				SWIFT_VERSION = 4.2;
+				VALIDATE_PRODUCT = YES;
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		B46EDEB1A7F0D78FE6394544C60169D1 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				DD3EEB93949E9EBA4437E9CDBF4A26F6 /* Debug */,
+				3B2C02AFB91CB5C82766ED5CF21FF628 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = "";
+		};
+		ECAB17FF35111B5E14DAAC0883031714 /* Build configuration list for PBXProject "PetstoreClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				A9EB0A02B94C427CBACFEC7CFFC6A816 /* Debug */,
+				F81D4E5FECD46E9AA6DD2C299CEBEF64 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Debug;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = E7D276EE2369D8C455513C2E05F9AED0 /* Project object */;
+}
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000000000000000000000000000000000000..919434a6254f0e9651f402737811be6634a03e9c
--- /dev/null
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:">
+   </FileRef>
+</Workspace>
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
new file mode 100644
index 0000000000000000000000000000000000000000..7802e379453b951ec5f78c0f1c296a38b2ee90e4
--- /dev/null
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "1000"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+               BuildableName = "PetstoreClient.framework"
+               BlueprintName = "PetstoreClient"
+               ReferencedContainer = "container:PetstoreClient.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "C1282C2230015E0D204BEAEDDFB49453"
+            BuildableName = "PetstoreClient.framework"
+            BlueprintName = "PetstoreClient"
+            ReferencedContainer = "container:PetstoreClient.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <CommandLineArguments>
+      </CommandLineArguments>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIHelper.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
index d94614b34fc71f50736db77e0d046bb2d356b30e..75dea24395752b328facec8e593fcac7ea470217 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
@@ -7,7 +7,7 @@
 import Foundation
 
 public struct APIHelper {
-    public static func rejectNil(_ source: [String:Any?]) -> [String:Any]? {
+    public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? {
         let destination = source.reduce(into: [String: Any]()) { (result, item) in
             if let value = item.value {
                 result[item.key] = value
@@ -20,17 +20,17 @@ public struct APIHelper {
         return destination
     }
 
-    public static func rejectNilHeaders(_ source: [String:Any?]) -> [String:String] {
+    public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] {
         return source.reduce(into: [String: String]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
-                result[item.key] = collection.filter({ $0 != nil }).map{ "\($0!)" }.joined(separator: ",")
+                result[item.key] = collection.filter({ $0 != nil }).map { "\($0!)" }.joined(separator: ",")
             } else if let value: Any = item.value {
                 result[item.key] = "\(value)"
             }
         }
     }
 
-    public static func convertBoolToString(_ source: [String: Any]?) -> [String:Any]? {
+    public static func convertBoolToString(_ source: [String: Any]?) -> [String: Any]? {
         guard let source = source else {
             return nil
         }
@@ -52,7 +52,7 @@ public struct APIHelper {
         return source
     }
 
-    public static func mapValuesToQueryItems(_ source: [String:Any?]) -> [URLQueryItem]? {
+    public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? {
         let destination = source.filter({ $0.value != nil}).reduce(into: [URLQueryItem]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
                 let value = collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",")
@@ -68,4 +68,3 @@ public struct APIHelper {
         return destination
     }
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs.swift
index 2890bffa2747d155c7c4c021610132c197ef2c83..9e4312f685de410bc328b2da41601768b1920229 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs.swift
@@ -9,22 +9,22 @@ import Foundation
 open class PetstoreClientAPI {
     public static var basePath = "http://petstore.swagger.io:80/v2"
     public static var credential: URLCredential?
-    public static var customHeaders: [String:String] = [:]
+    public static var customHeaders: [String: String] = [:]
     public static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory()
 }
 
 open class RequestBuilder<T> {
     var credential: URLCredential?
-    var headers: [String:String]
-    public let parameters: [String:Any]?
+    var headers: [String: String]
+    public let parameters: [String: Any]?
     public let isBody: Bool
     public let method: String
     public let URLString: String
 
     /// Optional block to obtain a reference to the request's progress instance when available.
-    public var onProgressReady: ((Progress) -> ())?
+    public var onProgressReady: ((Progress) -> Void)?
 
-    required public init(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         self.method = method
         self.URLString = URLString
         self.parameters = parameters
@@ -34,7 +34,7 @@ open class RequestBuilder<T> {
         addHeaders(PetstoreClientAPI.customHeaders)
     }
 
-    open func addHeaders(_ aHeaders:[String:String]) {
+    open func addHeaders(_ aHeaders: [String: String]) {
         for (header, value) in aHeaders {
             headers[header] = value
         }
@@ -57,5 +57,5 @@ open class RequestBuilder<T> {
 
 public protocol RequestBuilderFactory {
     func getNonDecodableBuilder<T>() -> RequestBuilder<T>.Type
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type
 }
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
index ffecb66c48c25d53c4b16c04fd9ea29704f4c870..30b346de0e1de39c998064f533ab75e67e925d46 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class AnotherFakeAPI {
     /**
      To test special tags
@@ -17,7 +15,7 @@ open class AnotherFakeAPI {
      - parameter body: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func call123testSpecialTags(body: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func call123testSpecialTags(body: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         call123testSpecialTagsWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
index 302767c2b0c2fff02217b3935503549bf98596d2..1073935592c04cf31999d5eff898f0e0015c8b4a 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
@@ -8,15 +8,13 @@
 import Foundation
 import Alamofire
 
-
-
 open class FakeAPI {
     /**
 
      - parameter body: (body) Input boolean as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterBooleanSerialize(body: Bool? = nil, completion: @escaping ((_ data: Bool?,_ error: Error?) -> Void)) {
+    open class func fakeOuterBooleanSerialize(body: Bool? = nil, completion: @escaping ((_ data: Bool?, _ error: Error?) -> Void)) {
         fakeOuterBooleanSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -45,7 +43,7 @@ open class FakeAPI {
      - parameter body: (body) Input composite as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, completion: @escaping ((_ data: OuterComposite?,_ error: Error?) -> Void)) {
+    open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, completion: @escaping ((_ data: OuterComposite?, _ error: Error?) -> Void)) {
         fakeOuterCompositeSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -74,7 +72,7 @@ open class FakeAPI {
      - parameter body: (body) Input number as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterNumberSerialize(body: Double? = nil, completion: @escaping ((_ data: Double?,_ error: Error?) -> Void)) {
+    open class func fakeOuterNumberSerialize(body: Double? = nil, completion: @escaping ((_ data: Double?, _ error: Error?) -> Void)) {
         fakeOuterNumberSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -103,7 +101,7 @@ open class FakeAPI {
      - parameter body: (body) Input string as post body (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func fakeOuterStringSerialize(body: String? = nil, completion: @escaping ((_ data: String?,_ error: Error?) -> Void)) {
+    open class func fakeOuterStringSerialize(body: String? = nil, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
         fakeOuterStringSerializeWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -132,7 +130,7 @@ open class FakeAPI {
      - parameter body: (body)  
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -166,7 +164,7 @@ open class FakeAPI {
      - parameter body: (body)  
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -203,7 +201,7 @@ open class FakeAPI {
      - parameter body: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testClientModel(body: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func testClientModel(body: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         testClientModelWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -247,7 +245,7 @@ open class FakeAPI {
      - parameter callback: (form) None (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -283,7 +281,7 @@ open class FakeAPI {
     open class func testEndpointParametersWithRequestBuilder(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "integer": integer?.encodeToJSON(),
             "int32": int32?.encodeToJSON(),
             "int64": int64?.encodeToJSON(),
@@ -302,7 +300,7 @@ open class FakeAPI {
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -390,7 +388,7 @@ open class FakeAPI {
      - parameter enumFormString: (form) Form parameter enum test (string) (optional, default to .-efg)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -417,19 +415,19 @@ open class FakeAPI {
     open class func testEnumParametersWithRequestBuilder(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "enum_form_string_array": enumFormStringArray,
             "enum_form_string": enumFormString?.rawValue
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "enum_query_string_array": enumQueryStringArray, 
-            "enum_query_string": enumQueryString?.rawValue, 
-            "enum_query_integer": enumQueryInteger?.rawValue, 
+            "enum_query_string_array": enumQueryStringArray,
+            "enum_query_string": enumQueryString?.rawValue,
+            "enum_query_integer": enumQueryInteger?.rawValue,
             "enum_query_double": enumQueryDouble?.rawValue
         ])
         let nillableHeaders: [String: Any?] = [
@@ -454,7 +452,7 @@ open class FakeAPI {
      - parameter int64Group: (query) Integer in group parameters (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -479,13 +477,13 @@ open class FakeAPI {
     open class func testGroupParametersWithRequestBuilder(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil) -> RequestBuilder<Void> {
         let path = "/fake"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "required_string_group": requiredStringGroup.encodeToJSON(), 
-            "required_int64_group": requiredInt64Group.encodeToJSON(), 
-            "string_group": stringGroup?.encodeToJSON(), 
+            "required_string_group": requiredStringGroup.encodeToJSON(),
+            "required_int64_group": requiredInt64Group.encodeToJSON(),
+            "string_group": stringGroup?.encodeToJSON(),
             "int64_group": int64Group?.encodeToJSON()
         ])
         let nillableHeaders: [String: Any?] = [
@@ -505,7 +503,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testInlineAdditionalProperties(param: [String:String], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testInlineAdditionalProperties(param: [String: String], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -521,7 +519,7 @@ open class FakeAPI {
      - parameter param: (body) request body 
      - returns: RequestBuilder<Void> 
      */
-    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String:String]) -> RequestBuilder<Void> {
+    open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String: String]) -> RequestBuilder<Void> {
         let path = "/fake/inline-additionalProperties"
         let URLString = PetstoreClientAPI.basePath + path
         let parameters = JSONEncodingHelper.encodingParameters(forEncodableObject: param)
@@ -540,7 +538,7 @@ open class FakeAPI {
      - parameter param2: (form) field2 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -560,14 +558,14 @@ open class FakeAPI {
     open class func testJsonFormDataWithRequestBuilder(param: String, param2: String) -> RequestBuilder<Void> {
         let path = "/fake/jsonFormData"
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "param": param,
             "param2": param2
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
index ddfeae23edd0ba8ef0f297a5fd5e4d85781c4f83..6bfa09016f5a29ac2189b02e2986d8623a499a70 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class FakeClassnameTags123API {
     /**
      To test class name in snake case
@@ -17,7 +15,7 @@ open class FakeClassnameTags123API {
      - parameter body: (body) client model 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func testClassname(body: Client, completion: @escaping ((_ data: Client?,_ error: Error?) -> Void)) {
+    open class func testClassname(body: Client, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
         testClassnameWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
index 0a5dfeb39b62e92a76f21ba58190bc3de827380f..896f1511805f44687db6e8d35a9f0ff7182c6b2b 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class PetAPI {
     /**
      Add a new pet to the store
@@ -17,7 +15,7 @@ open class PetAPI {
      - parameter body: (body) Pet object that needs to be added to the store 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func addPet(body: Pet, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func addPet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         addPetWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -55,7 +53,7 @@ open class PetAPI {
      - parameter apiKey: (header)  (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deletePet(petId: Int64, apiKey: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func deletePet(petId: Int64, apiKey: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -81,8 +79,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
         let nillableHeaders: [String: Any?] = [
             "api_key": apiKey
@@ -109,7 +107,7 @@ open class PetAPI {
      - parameter status: (query) Status values that need to be considered for filter 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func findPetsByStatus(status: [String], completion: @escaping ((_ data: [Pet]?,_ error: Error?) -> Void)) {
+    open class func findPetsByStatus(status: [String], completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
         findPetsByStatusWithRequestBuilder(status: status).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -128,8 +126,8 @@ open class PetAPI {
     open class func findPetsByStatusWithRequestBuilder(status: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByStatus"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "status": status
@@ -146,7 +144,7 @@ open class PetAPI {
      - parameter tags: (query) Tags to filter by 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func findPetsByTags(tags: [String], completion: @escaping ((_ data: [Pet]?,_ error: Error?) -> Void)) {
+    open class func findPetsByTags(tags: [String], completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
         findPetsByTagsWithRequestBuilder(tags: tags).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -165,8 +163,8 @@ open class PetAPI {
     open class func findPetsByTagsWithRequestBuilder(tags: [String]) -> RequestBuilder<[Pet]> {
         let path = "/pet/findByTags"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "tags": tags
@@ -183,7 +181,7 @@ open class PetAPI {
      - parameter petId: (path) ID of pet to return 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getPetById(petId: Int64, completion: @escaping ((_ data: Pet?,_ error: Error?) -> Void)) {
+    open class func getPetById(petId: Int64, completion: @escaping ((_ data: Pet?, _ error: Error?) -> Void)) {
         getPetByIdWithRequestBuilder(petId: petId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -205,8 +203,8 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Pet>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -220,7 +218,7 @@ open class PetAPI {
      - parameter body: (body) Pet object that needs to be added to the store 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updatePet(body: Pet, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func updatePet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         updatePetWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -259,7 +257,7 @@ open class PetAPI {
      - parameter status: (form) Updated status of the pet (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -286,14 +284,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "name": name,
             "status": status
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -309,7 +307,7 @@ open class PetAPI {
      - parameter file: (form) file to upload (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, completion: @escaping ((_ data: ApiResponse?,_ error: Error?) -> Void)) {
+    open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, completion: @escaping ((_ data: ApiResponse?, _ error: Error?) -> Void)) {
         uploadFileWithRequestBuilder(petId: petId, additionalMetadata: additionalMetadata, file: file).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -332,14 +330,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "file": file
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -355,7 +353,7 @@ open class PetAPI {
      - parameter additionalMetadata: (form) Additional data to pass to server (optional)
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil, completion: @escaping ((_ data: ApiResponse?,_ error: Error?) -> Void)) {
+    open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil, completion: @escaping ((_ data: ApiResponse?, _ error: Error?) -> Void)) {
         uploadFileWithRequiredFileWithRequestBuilder(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -378,14 +376,14 @@ open class PetAPI {
         let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let formParams: [String:Any?] = [
+        let formParams: [String: Any?] = [
             "additionalMetadata": additionalMetadata,
             "requiredFile": requiredFile
         ]
 
         let nonNullParameters = APIHelper.rejectNil(formParams)
         let parameters = APIHelper.convertBoolToString(nonNullParameters)
-        
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<ApiResponse>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
index a2bced598f0dc881287cb24338b768b2408384f0..71949b335d7787ed77427b9e35b68e55c6384567 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class StoreAPI {
     /**
      Delete purchase order by ID
@@ -17,7 +15,7 @@ open class StoreAPI {
      - parameter orderId: (path) ID of the order that needs to be deleted 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         deleteOrderWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -40,8 +38,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -54,7 +52,7 @@ open class StoreAPI {
      
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getInventory(completion: @escaping ((_ data: [String:Int]?,_ error: Error?) -> Void)) {
+    open class func getInventory(completion: @escaping ((_ data: [String: Int]?, _ error: Error?) -> Void)) {
         getInventoryWithRequestBuilder().execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -69,14 +67,14 @@ open class StoreAPI {
        - name: api_key
      - returns: RequestBuilder<[String:Int]> 
      */
-    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String:Int]> {
+    open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String: Int]> {
         let path = "/store/inventory"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
-        let requestBuilder: RequestBuilder<[String:Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+        let requestBuilder: RequestBuilder<[String: Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
 
         return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false)
     }
@@ -87,7 +85,7 @@ open class StoreAPI {
      - parameter orderId: (path) ID of pet that needs to be fetched 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getOrderById(orderId: Int64, completion: @escaping ((_ data: Order?,_ error: Error?) -> Void)) {
+    open class func getOrderById(orderId: Int64, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
         getOrderByIdWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -106,8 +104,8 @@ open class StoreAPI {
         let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Order>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -121,7 +119,7 @@ open class StoreAPI {
      - parameter body: (body) order placed for purchasing the pet 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func placeOrder(body: Order, completion: @escaping ((_ data: Order?,_ error: Error?) -> Void)) {
+    open class func placeOrder(body: Order, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
         placeOrderWithRequestBuilder(body: body).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
index d8cafaf2c9627daa1b2363ffc5899e2ddb6344c5..efeb64468a5cd74eaf97915e41267dc9fceddb5e 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class UserAPI {
     /**
      Create user
@@ -17,7 +15,7 @@ open class UserAPI {
      - parameter body: (body) Created user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUser(body: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createUser(body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createUserWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -52,7 +50,7 @@ open class UserAPI {
      - parameter body: (body) List of user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUsersWithArrayInput(body: [User], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createUsersWithArrayInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createUsersWithArrayInputWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -86,7 +84,7 @@ open class UserAPI {
      - parameter body: (body) List of user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func createUsersWithListInput(body: [User], completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func createUsersWithListInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         createUsersWithListInputWithRequestBuilder(body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -120,7 +118,7 @@ open class UserAPI {
      - parameter username: (path) The name that needs to be deleted 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func deleteUser(username: String, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func deleteUser(username: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         deleteUserWithRequestBuilder(username: username).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -143,8 +141,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -158,7 +156,7 @@ open class UserAPI {
      - parameter username: (path) The name that needs to be fetched. Use user1 for testing. 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getUserByName(username: String, completion: @escaping ((_ data: User?,_ error: Error?) -> Void)) {
+    open class func getUserByName(username: String, completion: @escaping ((_ data: User?, _ error: Error?) -> Void)) {
         getUserByNameWithRequestBuilder(username: username).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -176,8 +174,8 @@ open class UserAPI {
         let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
         path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<User>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
@@ -192,7 +190,7 @@ open class UserAPI {
      - parameter password: (query) The password for login in clear text 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func loginUser(username: String, password: String, completion: @escaping ((_ data: String?,_ error: Error?) -> Void)) {
+    open class func loginUser(username: String, password: String, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
         loginUserWithRequestBuilder(username: username, password: password).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -209,11 +207,11 @@ open class UserAPI {
     open class func loginUserWithRequestBuilder(username: String, password: String) -> RequestBuilder<String> {
         let path = "/user/login"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
-            "username": username, 
+            "username": username,
             "password": password
         ])
 
@@ -227,7 +225,7 @@ open class UserAPI {
      
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func logoutUser(completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func logoutUser(completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         logoutUserWithRequestBuilder().execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
@@ -245,8 +243,8 @@ open class UserAPI {
     open class func logoutUserWithRequestBuilder() -> RequestBuilder<Void> {
         let path = "/user/logout"
         let URLString = PetstoreClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         let url = URLComponents(string: URLString)
 
         let requestBuilder: RequestBuilder<Void>.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
@@ -261,7 +259,7 @@ open class UserAPI {
      - parameter body: (body) Updated user object 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func updateUser(username: String, body: User, completion: @escaping ((_ data: Void?,_ error: Error?) -> Void)) {
+    open class func updateUser(username: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
         updateUserWithRequestBuilder(username: username, body: body).execute { (response, error) -> Void in
             if error == nil {
                 completion((), error)
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
index dac40e9a31cfbf7c6194a337ddd9ab7cafb16b35..04ad02a5ce88e02b302bcdb3f9b02522a5509b5a 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift
@@ -12,7 +12,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
         return AlamofireRequestBuilder<T>.self
     }
 
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type {
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type {
         return AlamofireDecodableRequestBuilder<T>.self
     }
 }
@@ -50,7 +50,7 @@ private struct SynchronizedDictionary<K: Hashable, V> {
 private var managerStore = SynchronizedDictionary<String, Alamofire.SessionManager>()
 
 open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
-    required public init(method: String, URLString: String, parameters: [String : Any]?, isBody: Bool, headers: [String : String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         super.init(method: method, URLString: URLString, parameters: parameters, isBody: isBody, headers: headers)
     }
 
@@ -88,17 +88,17 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
      May be overridden by a subclass if you want to control the request
      configuration (e.g. to override the cache policy).
      */
-    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String:String]) -> DataRequest {
+    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) -> DataRequest {
         return manager.request(URLString, method: method, parameters: parameters, encoding: encoding, headers: headers)
     }
 
     override open func execute(_ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
-        let managerId:String = UUID().uuidString
+        let managerId: String = UUID().uuidString
         // Create a new manager for each request to customize its request header
         let manager = createSessionManager()
         managerStore[managerId] = manager
 
-        let encoding:ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
+        let encoding: ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
 
         let xMethod = Alamofire.HTTPMethod(rawValue: method)
         let fileKeys = parameters == nil ? [] : parameters!.filter { $1 is NSURL }
@@ -111,8 +111,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
                     case let fileURL as URL:
                         if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
                             mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
-                        }
-                        else {
+                        } else {
                             mpForm.append(fileURL, withName: k)
                         }
                     case let string as String:
@@ -276,7 +275,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
         return httpHeaders
     }
 
-    fileprivate func getFileName(fromContentDisposition contentDisposition : String?) -> String? {
+    fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? {
 
         guard let contentDisposition = contentDisposition else {
             return nil
@@ -284,7 +283,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
         let items = contentDisposition.components(separatedBy: ";")
 
-        var filename : String? = nil
+        var filename: String? = nil
 
         for contentItem in items {
 
@@ -304,7 +303,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getPath(from url : URL) throws -> String {
+    fileprivate func getPath(from url: URL) throws -> String {
 
         guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else {
             throw DownloadException.requestMissingPath
@@ -318,7 +317,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getURL(from urlRequest : URLRequest) throws -> URL {
+    fileprivate func getURL(from urlRequest: URLRequest) throws -> URL {
 
         guard let url = urlRequest.url else {
             throw DownloadException.requestMissingURL
@@ -329,7 +328,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
 }
 
-fileprivate enum DownloadException : Error {
+private enum DownloadException: Error {
     case responseDataMissing
     case responseFailed
     case requestMissing
@@ -344,7 +343,7 @@ public enum AlamofireDecodableRequestBuilderError: Error {
     case generalError(Error)
 }
 
-open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilder<T> {
+open class AlamofireDecodableRequestBuilder<T: Decodable>: AlamofireRequestBuilder<T> {
 
     override fileprivate func processRequest(request: DataRequest, _ managerId: String, _ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
         if let credential = self.credential {
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
index 584de8c3d57a78a248749874fabd8245bf33f9fc..111d5a3a8cbe9afe5289cf58aa577d7c8f761a4a 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
@@ -13,7 +13,7 @@ open class CodableHelper {
 
     public static var dateformatter: DateFormatter?
 
-    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T : Decodable {
+    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable {
         var returnedDecodable: T? = nil
         var returnedError: Error? = nil
 
@@ -39,7 +39,7 @@ open class CodableHelper {
         return (returnedDecodable, returnedError)
     }
 
-    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T : Encodable {
+    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable {
         var returnedData: Data?
         var returnedError: Error? = nil
 
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Configuration.swift
index 516590da5d9e34183fdca8fef2901c7b53ab763b..e1ecb39726e7a8b435a6e688d95ddec9693fc3bc 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Configuration.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Configuration.swift
@@ -7,9 +7,9 @@
 import Foundation
 
 open class Configuration {
-	
+
 	// This value is used to configure the date formatter that is used to serialize dates into JSON format. 
 	// You must set it prior to encoding any dates, and it will only be read once. 
     public static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
-    
-}
\ No newline at end of file
+
+}
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Extensions.swift
index 8bf1829ba806b618d4e918b3c45a67c7a5a98803..24c128daadef77fdadd2629825a2d7ff04016e59 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Extensions.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Extensions.swift
@@ -112,24 +112,24 @@ extension String: CodingKey {
 
 extension KeyedEncodingContainerProtocol {
 
-    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T: Encodable {
         var arrayContainer = nestedUnkeyedContainer(forKey: key)
         try arrayContainer.encode(contentsOf: values)
     }
 
-    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable {
         if let values = values {
             try encodeArray(values, forKey: key)
         }
     }
 
-    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T : Encodable {
+    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T: Encodable {
         for (key, value) in pairs {
             try encode(value, forKey: key)
         }
     }
 
-    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T : Encodable {
+    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T: Encodable {
         if let pairs = pairs {
             try encodeMap(pairs)
         }
@@ -139,7 +139,7 @@ extension KeyedEncodingContainerProtocol {
 
 extension KeyedDecodingContainerProtocol {
 
-    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T : Decodable {
+    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable {
         var tmpArray = [T]()
 
         var nestedContainer = try nestedUnkeyedContainer(forKey: key)
@@ -151,7 +151,7 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T : Decodable {
+    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable {
         var tmpArray: [T]? = nil
 
         if contains(key) {
@@ -161,8 +161,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T : Decodable {
-        var map: [Self.Key : T] = [:]
+    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T: Decodable {
+        var map: [Self.Key: T] = [:]
 
         for key in allKeys {
             if !excludedKeys.contains(key) {
@@ -175,5 +175,3 @@ extension KeyedDecodingContainerProtocol {
     }
 
 }
-
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
index 70449515842de48fed6aec10ef246b1ad0f89e8b..3e68bb5d4a9b57609b955025cd250046c16fde0f 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
@@ -10,7 +10,7 @@ import Alamofire
 
 open class JSONEncodingHelper {
 
-    open class func encodingParameters<T:Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
+    open class func encodingParameters<T: Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
         var params: Parameters? = nil
 
         // Encode the Encodable object
@@ -39,5 +39,5 @@ open class JSONEncodingHelper {
 
         return params
     }
-    
+
 }
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models.swift
index 408563890359088c1d97f24053ac1392706457bf..e87ce399c7c8b963ddee0f78a14a70a727751d1a 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models.swift
@@ -10,7 +10,7 @@ protocol JSONEncodable {
     func encodeToJSON() -> Any
 }
 
-public enum ErrorResponse : Error {
+public enum ErrorResponse: Error {
     case error(Int, Data?, Error)
 }
 
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift
index 796e46eca24765665ef582c8fd1a6fbac95f4ab6..94295c495c53b2868e08f0f091e7eaa6af3f480f 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesAnyType: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesAnyType: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Any] = [:]
+    public var additionalProperties: [String: Any] = [:]
 
     public subscript(key: String) -> Any? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesAnyType: Codable {
         additionalProperties = try container.decodeMap(Any.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift
index 5e58839b5a5f8329a444907d5bad016854da090e..cde9824ddb3ae7769d7978b047dbd49bf7e68cb7 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesArray: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesArray: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Array] = [:]
+    public var additionalProperties: [String: Array] = [:]
 
     public subscript(key: String) -> Array? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesArray: Codable {
         additionalProperties = try container.decodeMap(Array.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift
index d4c90829b4c767b0bf6daa85c3675bc5e5c56313..76791a9ddd3eb37dd793d196c8b719712c0b3dc9 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesBoolean: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesBoolean: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Bool] = [:]
+    public var additionalProperties: [String: Bool] = [:]
 
     public subscript(key: String) -> Bool? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesBoolean: Codable {
         additionalProperties = try container.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
index 4db39adae84cafaa338f812343439b8f772de667..83a06951ccd657fb6d41f10cf42fc3b347213d3b 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
@@ -7,23 +7,19 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesClass: Codable {
 
-    public var mapString: [String:String]?
-    public var mapMapString: [String:[String:String]]?
+    public var mapString: [String: String]?
+    public var mapMapString: [String: [String: String]]?
 
-    public init(mapString: [String:String]?, mapMapString: [String:[String:String]]?) {
+    public init(mapString: [String: String]?, mapMapString: [String: [String: String]]?) {
         self.mapString = mapString
         self.mapMapString = mapMapString
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapString = "map_string"
         case mapMapString = "map_map_string"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift
index b03bbe445653006ff99d546109fdf846f9e68b3c..4a0f2acaa4175d9bf1df53b47bb359fae7742d3f 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesInteger: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesInteger: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Int] = [:]
+    public var additionalProperties: [String: Int] = [:]
 
     public subscript(key: String) -> Int? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesInteger: Codable {
         additionalProperties = try container.decodeMap(Int.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift
index 9701d54c9b25f78b5bced7c3426c4d21b26a16bd..95e491000ab7d019a9ef8e5786c6c2d984ca128c 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesNumber: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesNumber: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Double] = [:]
+    public var additionalProperties: [String: Double] = [:]
 
     public subscript(key: String) -> Double? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesNumber: Codable {
         additionalProperties = try container.decodeMap(Double.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift
index c6e1e670b8cc61babbb2246f382423e425fab1c4..f45888a410196796958c7a6483c0f254c86c3032 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesObject: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesObject: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:Dictionary] = [:]
+    public var additionalProperties: [String: Dictionary] = [:]
 
     public subscript(key: String) -> Dictionary? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesObject: Codable {
         additionalProperties = try container.decodeMap(Dictionary.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift
index 6128dce7d422e91dd79f6d293e2e1c516593aab9..7af63cc7152e17d728e72047916b7a664adc2f2c 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct AdditionalPropertiesString: Codable {
 
     public var name: String?
@@ -16,7 +14,7 @@ public struct AdditionalPropertiesString: Codable {
     public init(name: String?) {
         self.name = name
     }
-    public var additionalProperties: [String:String] = [:]
+    public var additionalProperties: [String: String] = [:]
 
     public subscript(key: String) -> String? {
         get {
@@ -52,7 +50,4 @@ public struct AdditionalPropertiesString: Codable {
         additionalProperties = try container.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
index befb84b1dfa42cd611656fdef4b0f74aa82e9759..88eceebd2a2a3190dd7840a1d3380503a6a13d23 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Animal: Codable {
 
     public var className: String?
@@ -19,6 +17,4 @@ public struct Animal: Codable {
         self.color = color
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
index e7bea63f8ed28132865ea4d3c23eab55666cf4f6..e09b0e9efdc8ca7798114f24aff21f57e8f9fabd 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
@@ -7,5 +7,4 @@
 
 import Foundation
 
-
 public typealias AnimalFarm = [Animal]
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
index a22e9aaebbb06bf18c9bf8a5893ab3e0ece6945d..ec270da8907438877ee5cc303b093ceba3993297 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ApiResponse: Codable {
 
     public var code: Int?
@@ -21,6 +19,4 @@ public struct ApiResponse: Codable {
         self.message = message
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
index 4e5a5ca1445d9faf133bded5a5c89297ea7c5822..3843287630b100a8210c60aff75d4286a44e46a7 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfArrayOfNumberOnly: Codable {
 
     public var arrayArrayNumber: [[Double]]?
@@ -17,10 +15,8 @@ public struct ArrayOfArrayOfNumberOnly: Codable {
         self.arrayArrayNumber = arrayArrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayArrayNumber = "ArrayArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
index 7d059d36833987dc60886960363e11e328dbcee2..f8b198e81f50d4cf237000ed8dae7d47779f8bf4 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayOfNumberOnly: Codable {
 
     public var arrayNumber: [Double]?
@@ -17,10 +15,8 @@ public struct ArrayOfNumberOnly: Codable {
         self.arrayNumber = arrayNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayNumber = "ArrayNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
index 9c56fed50c2e79b759cdaceb078c82da316b463d..67f7f7e5151fd3bca131124815c75a0d9f8ade28 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ArrayTest: Codable {
 
     public var arrayOfString: [String]?
@@ -21,12 +19,10 @@ public struct ArrayTest: Codable {
         self.arrayArrayOfModel = arrayArrayOfModel
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case arrayOfString = "array_of_string"
         case arrayArrayOfInteger = "array_array_of_integer"
         case arrayArrayOfModel = "array_array_of_model"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
index 98cda23dac9e7415bc9a1a2cd1dd98fa389d885d..d576b50b1c9c1f2c4c7b719c7800e4da183e49ba 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Capitalization: Codable {
 
     public var smallCamel: String?
@@ -28,7 +26,7 @@ public struct Capitalization: Codable {
         self.ATT_NAME = ATT_NAME
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case smallCamel
         case capitalCamel = "CapitalCamel"
         case smallSnake = "small_Snake"
@@ -37,6 +35,4 @@ public struct Capitalization: Codable {
         case ATT_NAME
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
index c83ab1d0d97407deff578b2d1d0c6654d3a7f34d..d6133a3dd5ca096014013fac75130994f265e0f1 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Cat: Codable {
 
     public var className: String?
@@ -21,6 +19,4 @@ public struct Cat: Codable {
         self.declawed = declawed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..a51ad0dffab1ba129591056cd816575af0e1ea09
--- /dev/null
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
@@ -0,0 +1,18 @@
+//
+// CatAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct CatAllOf: Codable {
+
+    public var declawed: Bool?
+
+    public init(declawed: Bool?) {
+        self.declawed = declawed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
index 3c11cfb3bc5cf859f812b52abb7140348a6c08a4..48b43fc318dfc50c18eca9bfa82cec9f06dfb225 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Category: Codable {
 
     public var id: Int64?
@@ -19,6 +17,4 @@ public struct Category: Codable {
         self.name = name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
index f673ed127cd8a545ae575acfcdee044768f8ae12..28cb30ce7b4bee968edc3cef6724572481551b91 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model with \&quot;_class\&quot; property */
 
 public struct ClassModel: Codable {
@@ -18,6 +17,4 @@ public struct ClassModel: Codable {
         self._class = _class
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
index 51390b6c4eac28e4df699b05a826a5da163ad0e4..00245ca37280eea9c87184eb0f40fb8bf03b81f2 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Client: Codable {
 
     public var client: String?
@@ -17,6 +15,4 @@ public struct Client: Codable {
         self.client = client
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
index 9a3016495335fa87032191850b06901fb501fb48..35c8cea0dd04f07863c39757509c9a08f064c8cb 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Dog: Codable {
 
     public var className: String?
@@ -21,6 +19,4 @@ public struct Dog: Codable {
         self.breed = breed
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..7786f8acc5ae7d0de7de7248ef5a94d4d16f0a17
--- /dev/null
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
@@ -0,0 +1,18 @@
+//
+// DogAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct DogAllOf: Codable {
+
+    public var breed: String?
+
+    public init(breed: String?) {
+        self.breed = breed
+    }
+
+}
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
index 8713961520e11abb6206697029d5a1fd6be66f00..5034ff0b8c684d21a45c635f4a4b9de56fb3cda1 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumArrays: Codable {
 
     public enum JustSymbol: String, Codable {
@@ -27,11 +25,9 @@ public struct EnumArrays: Codable {
         self.arrayEnum = arrayEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justSymbol = "just_symbol"
         case arrayEnum = "array_enum"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
index 7280a621fec75a24fafa361025faea5190af9f45..3c1dfcac577d12c69319e42cac6ea851bf5dcf28 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum EnumClass: String, Codable {
     case abc = "_abc"
     case efg = "-efg"
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
index ed93ec357bdf1b43bfec1f8db1bdb898a318243f..b1eb8e98f89a1afdfe1aa1ac05445642fe62c4c8 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct EnumTest: Codable {
 
     public enum EnumString: String, Codable {
@@ -43,7 +41,7 @@ public struct EnumTest: Codable {
         self.outerEnum = outerEnum
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case enumString = "enum_string"
         case enumStringRequired = "enum_string_required"
         case enumInteger = "enum_integer"
@@ -51,6 +49,4 @@ public struct EnumTest: Codable {
         case outerEnum
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/File.swift
index c8bd1f19589b528c826d65c456ecf8d9cc974097..ea3520f053dd690ade411e20d80082a7acf57785 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/File.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/File.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Must be named &#x60;File&#x60; for test. */
 
 public struct File: Codable {
@@ -19,6 +18,4 @@ public struct File: Codable {
         self.sourceURI = sourceURI
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
index 64d025068027aa26974661ff1af66421b86d4ab8..532f1457939af300b65f89821673cf1951ec2f0b 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FileSchemaTestClass: Codable {
 
     public var file: File?
@@ -19,6 +17,4 @@ public struct FileSchemaTestClass: Codable {
         self.files = files
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
index 7b26d8d80e4756132ae6ce1bf33a9d37f31525f4..4eed10b95a1168a62dd632a6678167663f603438 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct FormatTest: Codable {
 
     public var integer: Int?
@@ -41,6 +39,4 @@ public struct FormatTest: Codable {
         self.password = password
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
index 554aee1081aa470de93a2c36c484b6427a67698a..906ddb06fb170e5de30f07754fce3efc4f512ee1 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct HasOnlyReadOnly: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct HasOnlyReadOnly: Codable {
         self.foo = foo
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/List.swift
index 8997340ff4befe18cc8f2754c7ea92620406571c..08d59953873e4cf8f3c5c133c58cf78c4a70f41e 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/List.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/List.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct List: Codable {
 
     public var _123list: String?
@@ -17,10 +15,8 @@ public struct List: Codable {
         self._123list = _123list
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _123list = "123-list"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
index 2d3a45d35a0cb38fad72874cee84e18f4c874014..3a10a7dfcaf6078594c592d7714c5df8d194ba28 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
@@ -7,33 +7,29 @@
 
 import Foundation
 
-
-
 public struct MapTest: Codable {
 
     public enum MapOfEnumString: String, Codable {
         case upper = "UPPER"
         case lower = "lower"
     }
-    public var mapMapOfString: [String:[String:String]]?
-    public var mapOfEnumString: [String:String]?
-    public var directMap: [String:Bool]?
+    public var mapMapOfString: [String: [String: String]]?
+    public var mapOfEnumString: [String: String]?
+    public var directMap: [String: Bool]?
     public var indirectMap: StringBooleanMap?
 
-    public init(mapMapOfString: [String:[String:String]]?, mapOfEnumString: [String:String]?, directMap: [String:Bool]?, indirectMap: StringBooleanMap?) {
+    public init(mapMapOfString: [String: [String: String]]?, mapOfEnumString: [String: String]?, directMap: [String: Bool]?, indirectMap: StringBooleanMap?) {
         self.mapMapOfString = mapMapOfString
         self.mapOfEnumString = mapOfEnumString
         self.directMap = directMap
         self.indirectMap = indirectMap
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case mapMapOfString = "map_map_of_string"
         case mapOfEnumString = "map_of_enum_string"
         case directMap = "direct_map"
         case indirectMap = "indirect_map"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
index 7116108fd7a3879ef9a8337cdd7ff8d8295a825e..c3deb2f28932f5d0ab338f3da2ac398de24a8822 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
@@ -7,20 +7,16 @@
 
 import Foundation
 
-
-
 public struct MixedPropertiesAndAdditionalPropertiesClass: Codable {
 
     public var uuid: UUID?
     public var dateTime: Date?
-    public var map: [String:Animal]?
+    public var map: [String: Animal]?
 
-    public init(uuid: UUID?, dateTime: Date?, map: [String:Animal]?) {
+    public init(uuid: UUID?, dateTime: Date?, map: [String: Animal]?) {
         self.uuid = uuid
         self.dateTime = dateTime
         self.map = map
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
index fc1d0606b7ba1788451c5add909cf4afb64031c9..7ed6aad907be01122bb19752a3622dc002d026be 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name starting with number */
 
 public struct Model200Response: Codable {
@@ -20,11 +19,9 @@ public struct Model200Response: Codable {
         self._class = _class
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case _class = "class"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
index bd7ad7ee6f7866fa9b70fd443e7cc38e76e2b385..71ba4c05dcd8d25b61f2962aa1ae9927810aab4c 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing model name same as property name */
 
 public struct Name: Codable {
@@ -24,13 +23,11 @@ public struct Name: Codable {
         self._123number = _123number
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case name
         case snakeCase = "snake_case"
         case property
         case _123number = "123Number"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
index e6fb206093aa29bfd8254cffb0026bf04436d925..abd2269e8e76cbfae26cdc3c7582d486a13cfb60 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct NumberOnly: Codable {
 
     public var justNumber: Double?
@@ -17,10 +15,8 @@ public struct NumberOnly: Codable {
         self.justNumber = justNumber
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case justNumber = "JustNumber"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
index 83c3b85e6629e9454007ba09246811d282e7c875..a6e1b1d2e5e46e4d5d82399449b966f00b38a59b 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Order: Codable {
 
     public enum Status: String, Codable {
@@ -33,6 +31,4 @@ public struct Order: Codable {
         self.complete = complete
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
index edc4523d9f0090260720b507ff61ac29df79e4ad..49aec001c5dbaeadfc67a0cfa9d2ad79fa3c20fb 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct OuterComposite: Codable {
 
     public var myNumber: Double?
@@ -21,12 +19,10 @@ public struct OuterComposite: Codable {
         self.myBoolean = myBoolean
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case myNumber = "my_number"
         case myString = "my_string"
         case myBoolean = "my_boolean"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
index bd1643d279edd46285735e726922a03f14b4c3e7..9f80fc95ecf0b11f47c6ec2f1e0e5a9a3ef000b0 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum OuterEnum: String, Codable {
     case placed = "placed"
     case approved = "approved"
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
index 9880907ec900b2247463c82248f79f13fdaf51e7..99eaa1329e48bb60eeb349a45e262ec85b44b225 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Pet: Codable {
 
     public enum Status: String, Codable {
@@ -33,6 +31,4 @@ public struct Pet: Codable {
         self.status = status
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
index 48b655a5b0aa2698abf0467fa038429ed3644075..0acd21fd10000317ffc9f96840a49b3dd538d0c7 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct ReadOnlyFirst: Codable {
 
     public var bar: String?
@@ -19,6 +17,4 @@ public struct ReadOnlyFirst: Codable {
         self.baz = baz
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
index de4b218999b7fda43e046a32e838f7c5807cd2d8..076082af842f1a3f7c6c1e19bffe9e3aecda4a31 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Model for testing reserved words */
 
 public struct Return: Codable {
@@ -18,10 +17,8 @@ public struct Return: Codable {
         self._return = _return
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case _return = "return"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
index 213d896ba9882c8f8751f37efa757035910dab55..e79fc45c0e914a027b53334468238a95af0c36dd 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct SpecialModelName: Codable {
 
     public var specialPropertyName: Int64?
@@ -17,10 +15,8 @@ public struct SpecialModelName: Codable {
         self.specialPropertyName = specialPropertyName
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case specialPropertyName = "$special[property.name]"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
index ae15e87d94bba90e3d51a7c4275c06e65fbc4987..3f1237fee477a298b1d99cef8062371e2f101f59 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
@@ -7,12 +7,9 @@
 
 import Foundation
 
-
-
 public struct StringBooleanMap: Codable {
 
-
-    public var additionalProperties: [String:Bool] = [:]
+    public var additionalProperties: [String: Bool] = [:]
 
     public subscript(key: String) -> Bool? {
         get {
@@ -45,7 +42,4 @@ public struct StringBooleanMap: Codable {
         additionalProperties = try container.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
index 32ee33a1a1e0dc98c253db9c2c387b6f39d2eadc..4dd8a9a9f5a0fc547c88401b39caf0f00cddd61d 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct Tag: Codable {
 
     public var id: Int64?
@@ -19,6 +17,4 @@ public struct Tag: Codable {
         self.name = name
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
index a088a2ad87f5444ebe149933ed4caf497e062b5d..07b590ab1079ef68a398b30117521190f48d56db 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderDefault: Codable {
 
     public var stringItem: String? = "what"
@@ -25,7 +23,7 @@ public struct TypeHolderDefault: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderDefault: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
index 3e91d9485cfe63eb94140f44c67931ac746186ac..29d005161783b488971cd3aace3c71a815710a39 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct TypeHolderExample: Codable {
 
     public var stringItem: String?
@@ -25,7 +23,7 @@ public struct TypeHolderExample: Codable {
         self.arrayItem = arrayItem
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case stringItem = "string_item"
         case numberItem = "number_item"
         case integerItem = "integer_item"
@@ -33,6 +31,4 @@ public struct TypeHolderExample: Codable {
         case arrayItem = "array_item"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/User.swift
index a61b5844201ea15d037424b32518b1c2d259ee4a..79f271ed73564b8af07f2698e649f38062255ce7 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/User.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/User.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct User: Codable {
 
     public var id: Int64?
@@ -32,6 +30,4 @@ public struct User: Codable {
         self.userStatus = userStatus
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
index e1b1ace8b153460ad9ee1066d0d45bf5f27ff152..aa016683503ba8661b79f61a18b7fa0cae4d2b19 100644
--- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
+++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift
@@ -7,8 +7,6 @@
 
 import Foundation
 
-
-
 public struct XmlItem: Codable {
 
     public var attributeString: String?
@@ -73,7 +71,7 @@ public struct XmlItem: Codable {
         self.prefixNsWrappedArray = prefixNsWrappedArray
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case attributeString = "attribute_string"
         case attributeNumber = "attribute_number"
         case attributeInteger = "attribute_integer"
@@ -105,6 +103,4 @@ public struct XmlItem: Codable {
         case prefixNsWrappedArray = "prefix_ns_wrapped_array"
     }
 
-
 }
-
diff --git a/samples/client/petstore/swift4/unwrapRequired/README.md b/samples/client/petstore/swift4/unwrapRequired/README.md
index 1e7f0a59ea01c4fc07d3b267963d7e87c9191142..0711eb870547e8af6fe7f4c1aa32785f0e89c278 100644
--- a/samples/client/petstore/swift4/unwrapRequired/README.md
+++ b/samples/client/petstore/swift4/unwrapRequired/README.md
@@ -73,10 +73,12 @@ Class | Method | HTTP request | Description
  - [ArrayTest](docs/ArrayTest.md)
  - [Capitalization](docs/Capitalization.md)
  - [Cat](docs/Cat.md)
+ - [CatAllOf](docs/CatAllOf.md)
  - [Category](docs/Category.md)
  - [ClassModel](docs/ClassModel.md)
  - [Client](docs/Client.md)
  - [Dog](docs/Dog.md)
+ - [DogAllOf](docs/DogAllOf.md)
  - [EnumArrays](docs/EnumArrays.md)
  - [EnumClass](docs/EnumClass.md)
  - [EnumTest](docs/EnumTest.md)
diff --git a/samples/client/petstore/swift4/unwrapRequired/docs/CatAllOf.md b/samples/client/petstore/swift4/unwrapRequired/docs/CatAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..79789be61c01631cd56d3925bd31a17533bcbf88
--- /dev/null
+++ b/samples/client/petstore/swift4/unwrapRequired/docs/CatAllOf.md
@@ -0,0 +1,10 @@
+# CatAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**declawed** | **Bool** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/unwrapRequired/docs/DogAllOf.md b/samples/client/petstore/swift4/unwrapRequired/docs/DogAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..9302ef52e938a092420c1a71707d79ca92464fb2
--- /dev/null
+++ b/samples/client/petstore/swift4/unwrapRequired/docs/DogAllOf.md
@@ -0,0 +1,10 @@
+# DogAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**breed** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift4/unwrapRequired/docs/UserAPI.md b/samples/client/petstore/swift4/unwrapRequired/docs/UserAPI.md
index da20013482e0f6d17dc962357b115180f084bf4c..380813bc68c02383e46b016c9e768915da8a4559 100644
--- a/samples/client/petstore/swift4/unwrapRequired/docs/UserAPI.md
+++ b/samples/client/petstore/swift4/unwrapRequired/docs/UserAPI.md
@@ -95,7 +95,7 @@ UserAPI.createUsersWithArrayInput(body: body) { (response, error) in
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
@@ -143,7 +143,7 @@ UserAPI.createUsersWithListInput(body: body) { (response, error) in
 
 Name | Type | Description  | Notes
 ------------- | ------------- | ------------- | -------------
- **body** | [**[User]**](Array.md) | List of user object | 
+ **body** | [**[User]**](User.md) | List of user object | 
 
 ### Return type
 
diff --git a/samples/client/petstore/swift4/unwrapRequired/project.yml b/samples/client/petstore/swift4/unwrapRequired/project.yml
new file mode 100644
index 0000000000000000000000000000000000000000..148b42517be93c052b823c18242dc38b19fd687b
--- /dev/null
+++ b/samples/client/petstore/swift4/unwrapRequired/project.yml
@@ -0,0 +1,15 @@
+name: PetstoreClient
+targets:
+  PetstoreClient:
+    type: framework
+    platform: iOS
+    deploymentTarget: "10.0"
+    sources: [PetstoreClient]
+    info:
+      path: ./Info.plist
+      version: 1.0.0
+    settings:
+      APPLICATION_EXTENSION_API_ONLY: true
+    scheme: {}
+    dependencies:
+    - carthage: Alamofire
diff --git a/samples/client/petstore/typescript-angular-v2/default/api/pet.service.ts b/samples/client/petstore/typescript-angular-v2/default/api/pet.service.ts
index b08cd7bb35c98f5b09909f70ce14fab5f4ca7747..ff2ed68baa6aac58a8ff4fb4dff6a4b4fb6e3374 100644
--- a/samples/client/petstore/typescript-angular-v2/default/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v2/default/api/pet.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -33,6 +32,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -43,6 +43,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
@@ -307,7 +308,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (status) {
             queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -361,7 +362,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (tags) {
             queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -548,7 +549,7 @@ export class PetService {
         } else {
             // TODO: this fails if a parameter is a file, the api can't consume "multipart/form-data" and a blob is passed.
             convertFormParamsToString = true;
-            formParams = new URLSearchParams('', new CustomQueryEncoderHelper());
+            formParams = new URLSearchParams('', this.encoder);
             // set the content-type explicitly to avoid having it set to 'text/plain'
             headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
         }
@@ -624,7 +625,7 @@ export class PetService {
         } else {
             // TODO: this fails if a parameter is a file, the api can't consume "multipart/form-data" and a blob is passed.
             convertFormParamsToString = true;
-            formParams = new URLSearchParams('', new CustomQueryEncoderHelper());
+            formParams = new URLSearchParams('', this.encoder);
             // set the content-type explicitly to avoid having it set to 'text/plain'
             headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
         }
diff --git a/samples/client/petstore/typescript-angular-v2/default/api/store.service.ts b/samples/client/petstore/typescript-angular-v2/default/api/store.service.ts
index f954cd0ecb5c70c39525a1729e8bf1dc412fef61..e774b1f93acfdb0b09deaf3325aefaa4493fc696 100644
--- a/samples/client/petstore/typescript-angular-v2/default/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v2/default/api/store.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -32,6 +31,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v2/default/api/user.service.ts b/samples/client/petstore/typescript-angular-v2/default/api/user.service.ts
index b28057cfb86e0bd5c9d64e49bfa0ae9b9e9b2926..a1ab3ad5952450fb1dae119b0b7e7615187e0fbf 100644
--- a/samples/client/petstore/typescript-angular-v2/default/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v2/default/api/user.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -32,6 +31,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
@@ -410,7 +411,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (username !== undefined && username !== null) {
             queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v2/default/configuration.ts b/samples/client/petstore/typescript-angular-v2/default/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..a442747dfc1fa6c8a0f59ae4c9a708dad3d04a3b 100644
--- a/samples/client/petstore/typescript-angular-v2/default/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v2/default/configuration.ts
@@ -1,3 +1,5 @@
+import { QueryEncoder } from '@angular/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: QueryEncoder;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: QueryEncoder;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v2/default/encoder.ts b/samples/client/petstore/typescript-angular-v2/default/encoder.ts
index 6fcda7b246dd3cb3fbb2a573d678e37591142c78..2a26942bee0e34c48d4f7cf415e613a56732df8b 100644
--- a/samples/client/petstore/typescript-angular-v2/default/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v2/default/encoder.ts
@@ -1,7 +1,7 @@
-    import { QueryEncoder } from '@angular/http';
+import { QueryEncoder } from '@angular/http';
 
 /**
-* CustomQueryEncoderHelper
+* Custom QueryEncoder
 * Fix plus sign (+) not encoding, so sent as blank space
 * See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
 */
diff --git a/samples/client/petstore/typescript-angular-v2/npm/api/pet.service.ts b/samples/client/petstore/typescript-angular-v2/npm/api/pet.service.ts
index b08cd7bb35c98f5b09909f70ce14fab5f4ca7747..ff2ed68baa6aac58a8ff4fb4dff6a4b4fb6e3374 100644
--- a/samples/client/petstore/typescript-angular-v2/npm/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v2/npm/api/pet.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -33,6 +32,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -43,6 +43,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
@@ -307,7 +308,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (status) {
             queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -361,7 +362,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (tags) {
             queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -548,7 +549,7 @@ export class PetService {
         } else {
             // TODO: this fails if a parameter is a file, the api can't consume "multipart/form-data" and a blob is passed.
             convertFormParamsToString = true;
-            formParams = new URLSearchParams('', new CustomQueryEncoderHelper());
+            formParams = new URLSearchParams('', this.encoder);
             // set the content-type explicitly to avoid having it set to 'text/plain'
             headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
         }
@@ -624,7 +625,7 @@ export class PetService {
         } else {
             // TODO: this fails if a parameter is a file, the api can't consume "multipart/form-data" and a blob is passed.
             convertFormParamsToString = true;
-            formParams = new URLSearchParams('', new CustomQueryEncoderHelper());
+            formParams = new URLSearchParams('', this.encoder);
             // set the content-type explicitly to avoid having it set to 'text/plain'
             headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
         }
diff --git a/samples/client/petstore/typescript-angular-v2/npm/api/store.service.ts b/samples/client/petstore/typescript-angular-v2/npm/api/store.service.ts
index f954cd0ecb5c70c39525a1729e8bf1dc412fef61..e774b1f93acfdb0b09deaf3325aefaa4493fc696 100644
--- a/samples/client/petstore/typescript-angular-v2/npm/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v2/npm/api/store.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -32,6 +31,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v2/npm/api/user.service.ts b/samples/client/petstore/typescript-angular-v2/npm/api/user.service.ts
index b28057cfb86e0bd5c9d64e49bfa0ae9b9e9b2926..a1ab3ad5952450fb1dae119b0b7e7615187e0fbf 100644
--- a/samples/client/petstore/typescript-angular-v2/npm/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v2/npm/api/user.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -32,6 +31,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
@@ -410,7 +411,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (username !== undefined && username !== null) {
             queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v2/npm/configuration.ts b/samples/client/petstore/typescript-angular-v2/npm/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..a442747dfc1fa6c8a0f59ae4c9a708dad3d04a3b 100644
--- a/samples/client/petstore/typescript-angular-v2/npm/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v2/npm/configuration.ts
@@ -1,3 +1,5 @@
+import { QueryEncoder } from '@angular/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: QueryEncoder;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: QueryEncoder;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v2/npm/encoder.ts b/samples/client/petstore/typescript-angular-v2/npm/encoder.ts
index 6fcda7b246dd3cb3fbb2a573d678e37591142c78..2a26942bee0e34c48d4f7cf415e613a56732df8b 100644
--- a/samples/client/petstore/typescript-angular-v2/npm/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v2/npm/encoder.ts
@@ -1,7 +1,7 @@
-    import { QueryEncoder } from '@angular/http';
+import { QueryEncoder } from '@angular/http';
 
 /**
-* CustomQueryEncoderHelper
+* Custom QueryEncoder
 * Fix plus sign (+) not encoding, so sent as blank space
 * See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
 */
diff --git a/samples/client/petstore/typescript-angular-v2/with-interfaces/api/pet.service.ts b/samples/client/petstore/typescript-angular-v2/with-interfaces/api/pet.service.ts
index 2a233a40952c8441874b2b367009747b4679e2da..5f26d9ad2b88a4c14443e6f463f68ec93d0e311f 100644
--- a/samples/client/petstore/typescript-angular-v2/with-interfaces/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v2/with-interfaces/api/pet.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -34,6 +33,7 @@ export class PetService implements PetServiceInterface {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -44,6 +44,7 @@ export class PetService implements PetServiceInterface {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
@@ -308,7 +309,7 @@ export class PetService implements PetServiceInterface {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (status) {
             queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -362,7 +363,7 @@ export class PetService implements PetServiceInterface {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (tags) {
             queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -549,7 +550,7 @@ export class PetService implements PetServiceInterface {
         } else {
             // TODO: this fails if a parameter is a file, the api can't consume "multipart/form-data" and a blob is passed.
             convertFormParamsToString = true;
-            formParams = new URLSearchParams('', new CustomQueryEncoderHelper());
+            formParams = new URLSearchParams('', this.encoder);
             // set the content-type explicitly to avoid having it set to 'text/plain'
             headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
         }
@@ -625,7 +626,7 @@ export class PetService implements PetServiceInterface {
         } else {
             // TODO: this fails if a parameter is a file, the api can't consume "multipart/form-data" and a blob is passed.
             convertFormParamsToString = true;
-            formParams = new URLSearchParams('', new CustomQueryEncoderHelper());
+            formParams = new URLSearchParams('', this.encoder);
             // set the content-type explicitly to avoid having it set to 'text/plain'
             headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
         }
diff --git a/samples/client/petstore/typescript-angular-v2/with-interfaces/api/store.service.ts b/samples/client/petstore/typescript-angular-v2/with-interfaces/api/store.service.ts
index 429e98b007d0742d77d0062331a5e1ab38d18dd2..f048d9575ecc2735e1264504723bdc709eb23ecf 100644
--- a/samples/client/petstore/typescript-angular-v2/with-interfaces/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v2/with-interfaces/api/store.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -33,6 +32,7 @@ export class StoreService implements StoreServiceInterface {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -43,6 +43,7 @@ export class StoreService implements StoreServiceInterface {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v2/with-interfaces/api/user.service.ts b/samples/client/petstore/typescript-angular-v2/with-interfaces/api/user.service.ts
index eff56586b363c10066b557dd34ed4b5de2266656..d89810de1ea38cd85cdf56f2146dcaa87c230a6f 100644
--- a/samples/client/petstore/typescript-angular-v2/with-interfaces/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v2/with-interfaces/api/user.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -33,6 +32,7 @@ export class UserService implements UserServiceInterface {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -43,6 +43,7 @@ export class UserService implements UserServiceInterface {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
@@ -411,7 +412,7 @@ export class UserService implements UserServiceInterface {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (username !== undefined && username !== null) {
             queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v2/with-interfaces/configuration.ts b/samples/client/petstore/typescript-angular-v2/with-interfaces/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..a442747dfc1fa6c8a0f59ae4c9a708dad3d04a3b 100644
--- a/samples/client/petstore/typescript-angular-v2/with-interfaces/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v2/with-interfaces/configuration.ts
@@ -1,3 +1,5 @@
+import { QueryEncoder } from '@angular/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: QueryEncoder;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: QueryEncoder;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v2/with-interfaces/encoder.ts b/samples/client/petstore/typescript-angular-v2/with-interfaces/encoder.ts
index 6fcda7b246dd3cb3fbb2a573d678e37591142c78..2a26942bee0e34c48d4f7cf415e613a56732df8b 100644
--- a/samples/client/petstore/typescript-angular-v2/with-interfaces/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v2/with-interfaces/encoder.ts
@@ -1,7 +1,7 @@
-    import { QueryEncoder } from '@angular/http';
+import { QueryEncoder } from '@angular/http';
 
 /**
-* CustomQueryEncoderHelper
+* Custom QueryEncoder
 * Fix plus sign (+) not encoding, so sent as blank space
 * See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
 */
diff --git a/samples/client/petstore/typescript-angular-v4.3/npm/api/pet.service.ts b/samples/client/petstore/typescript-angular-v4.3/npm/api/pet.service.ts
index 9d44aede08d2dda58f7250a5636e37f1b0150d93..5cd7568a7b0b2707e46c105115bfbeda229160e0 100644
--- a/samples/client/petstore/typescript-angular-v4.3/npm/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v4.3/npm/api/pet.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs/Observable';
 
 import { ApiResponse } from '../model/apiResponse';
@@ -31,6 +30,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -41,6 +41,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -178,7 +179,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (status) {
             queryParameters = queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -233,7 +234,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (tags) {
             queryParameters = queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -421,7 +422,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (name !== undefined) {
@@ -494,7 +495,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (additionalMetadata !== undefined) {
diff --git a/samples/client/petstore/typescript-angular-v4.3/npm/api/store.service.ts b/samples/client/petstore/typescript-angular-v4.3/npm/api/store.service.ts
index d2708f2abf468a552e1edcdfb7a9a7c0e57dbe28..7f97217dc1469925c1238b1616acaa316d6b8f74 100644
--- a/samples/client/petstore/typescript-angular-v4.3/npm/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v4.3/npm/api/store.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs/Observable';
 
 import { Order } from '../model/order';
@@ -30,6 +29,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v4.3/npm/api/user.service.ts b/samples/client/petstore/typescript-angular-v4.3/npm/api/user.service.ts
index 39b86c1b58aaa5fb6867bb0d89d2f30cb8449255..34379e25ae63a0f486b025ea6c60c53189dbff0e 100644
--- a/samples/client/petstore/typescript-angular-v4.3/npm/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v4.3/npm/api/user.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs/Observable';
 
 import { User } from '../model/user';
@@ -30,6 +29,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -288,7 +289,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (username !== undefined && username !== null) {
             queryParameters = queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v4.3/npm/configuration.ts b/samples/client/petstore/typescript-angular-v4.3/npm/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..c038bbc94787446ecda4640d7b486a3a87c9c746 100644
--- a/samples/client/petstore/typescript-angular-v4.3/npm/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v4.3/npm/configuration.ts
@@ -1,3 +1,5 @@
+import { HttpParameterCodec } from '@angular/common/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v4.3/npm/encoder.ts b/samples/client/petstore/typescript-angular-v4.3/npm/encoder.ts
index f1c6b78c9c8eb60b8c4c3b24b1119401fb47c24d..f3e504196f03f8d5c2ce8722a16b9ffd96649edb 100644
--- a/samples/client/petstore/typescript-angular-v4.3/npm/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v4.3/npm/encoder.ts
@@ -1,18 +1,21 @@
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 
diff --git a/samples/client/petstore/typescript-angular-v4/npm/api/pet.service.ts b/samples/client/petstore/typescript-angular-v4/npm/api/pet.service.ts
index b08cd7bb35c98f5b09909f70ce14fab5f4ca7747..ff2ed68baa6aac58a8ff4fb4dff6a4b4fb6e3374 100644
--- a/samples/client/petstore/typescript-angular-v4/npm/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v4/npm/api/pet.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -33,6 +32,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -43,6 +43,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
@@ -307,7 +308,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (status) {
             queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -361,7 +362,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (tags) {
             queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -548,7 +549,7 @@ export class PetService {
         } else {
             // TODO: this fails if a parameter is a file, the api can't consume "multipart/form-data" and a blob is passed.
             convertFormParamsToString = true;
-            formParams = new URLSearchParams('', new CustomQueryEncoderHelper());
+            formParams = new URLSearchParams('', this.encoder);
             // set the content-type explicitly to avoid having it set to 'text/plain'
             headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
         }
@@ -624,7 +625,7 @@ export class PetService {
         } else {
             // TODO: this fails if a parameter is a file, the api can't consume "multipart/form-data" and a blob is passed.
             convertFormParamsToString = true;
-            formParams = new URLSearchParams('', new CustomQueryEncoderHelper());
+            formParams = new URLSearchParams('', this.encoder);
             // set the content-type explicitly to avoid having it set to 'text/plain'
             headers.set('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
         }
diff --git a/samples/client/petstore/typescript-angular-v4/npm/api/store.service.ts b/samples/client/petstore/typescript-angular-v4/npm/api/store.service.ts
index f954cd0ecb5c70c39525a1729e8bf1dc412fef61..e774b1f93acfdb0b09deaf3325aefaa4493fc696 100644
--- a/samples/client/petstore/typescript-angular-v4/npm/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v4/npm/api/store.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -32,6 +31,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v4/npm/api/user.service.ts b/samples/client/petstore/typescript-angular-v4/npm/api/user.service.ts
index b28057cfb86e0bd5c9d64e49bfa0ae9b9e9b2926..a1ab3ad5952450fb1dae119b0b7e7615187e0fbf 100644
--- a/samples/client/petstore/typescript-angular-v4/npm/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v4/npm/api/user.service.ts
@@ -12,11 +12,10 @@
 /* tslint:disable:no-unused-variable member-ordering */
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
-import { Http, Headers, URLSearchParams }                    from '@angular/http';
-import { RequestMethod, RequestOptions, RequestOptionsArgs } from '@angular/http';
-import { Response, ResponseContentType }                     from '@angular/http';
+import { Http, Headers, URLSearchParams,
+        RequestMethod, RequestOptions, RequestOptionsArgs,
+        Response, ResponseContentType, QueryEncoder }        from '@angular/http';
 import { CustomQueryEncoderHelper }                          from '../encoder';
-
 import { Observable }                                        from 'rxjs/Observable';
 import '../rxjs-operators';
 
@@ -32,6 +31,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new Headers();
     public configuration = new Configuration();
+    public encoder: QueryEncoder;
 
     constructor(protected http: Http, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomQueryEncoderHelper();
     }
 
     /**
@@ -410,7 +411,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new URLSearchParams('', new CustomQueryEncoderHelper());
+        let queryParameters = new URLSearchParams('', this.encoder);
         if (username !== undefined && username !== null) {
             queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v4/npm/configuration.ts b/samples/client/petstore/typescript-angular-v4/npm/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..a442747dfc1fa6c8a0f59ae4c9a708dad3d04a3b 100644
--- a/samples/client/petstore/typescript-angular-v4/npm/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v4/npm/configuration.ts
@@ -1,3 +1,5 @@
+import { QueryEncoder } from '@angular/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: QueryEncoder;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: QueryEncoder;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v4/npm/encoder.ts b/samples/client/petstore/typescript-angular-v4/npm/encoder.ts
index 6fcda7b246dd3cb3fbb2a573d678e37591142c78..2a26942bee0e34c48d4f7cf415e613a56732df8b 100644
--- a/samples/client/petstore/typescript-angular-v4/npm/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v4/npm/encoder.ts
@@ -1,7 +1,7 @@
-    import { QueryEncoder } from '@angular/http';
+import { QueryEncoder } from '@angular/http';
 
 /**
-* CustomQueryEncoderHelper
+* Custom QueryEncoder
 * Fix plus sign (+) not encoding, so sent as blank space
 * See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
 */
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/pet.service.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/pet.service.ts
index 5f392341a955a6d888d3285588bd2ef19b451ef6..d7085113ed4cb88cfd03530b871645765633b635 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/pet.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { ApiResponse } from '../model/apiResponse';
@@ -31,6 +30,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -41,6 +41,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -178,7 +179,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (status) {
             queryParameters = queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -233,7 +234,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (tags) {
             queryParameters = queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -421,7 +422,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (name !== undefined) {
@@ -494,7 +495,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (additionalMetadata !== undefined) {
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/store.service.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/store.service.ts
index 003cb591c1f985914dfd9a7b7ef26bc581592756..04d518a1495205a0fb84dd6b60e1e7482583c961 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/store.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { Order } from '../model/order';
@@ -30,6 +29,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/user.service.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/user.service.ts
index 302a73c389e49c6cae9ab77a35e94fe07db86500..446f5c51c277b4c8c55e7ec785324e770d4a0048 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/api/user.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { User } from '../model/user';
@@ -30,6 +29,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -288,7 +289,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (username !== undefined && username !== null) {
             queryParameters = queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/configuration.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..c038bbc94787446ecda4640d7b486a3a87c9c746 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/configuration.ts
@@ -1,3 +1,5 @@
+import { HttpParameterCodec } from '@angular/common/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/encoder.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/encoder.ts
index f1c6b78c9c8eb60b8c4c3b24b1119401fb47c24d..f3e504196f03f8d5c2ce8722a16b9ffd96649edb 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/default/encoder.ts
@@ -1,18 +1,21 @@
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/pet.service.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/pet.service.ts
index 5f392341a955a6d888d3285588bd2ef19b451ef6..d7085113ed4cb88cfd03530b871645765633b635 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/pet.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { ApiResponse } from '../model/apiResponse';
@@ -31,6 +30,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -41,6 +41,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -178,7 +179,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (status) {
             queryParameters = queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -233,7 +234,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (tags) {
             queryParameters = queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -421,7 +422,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (name !== undefined) {
@@ -494,7 +495,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (additionalMetadata !== undefined) {
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/store.service.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/store.service.ts
index 003cb591c1f985914dfd9a7b7ef26bc581592756..04d518a1495205a0fb84dd6b60e1e7482583c961 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/store.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { Order } from '../model/order';
@@ -30,6 +29,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/user.service.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/user.service.ts
index 302a73c389e49c6cae9ab77a35e94fe07db86500..446f5c51c277b4c8c55e7ec785324e770d4a0048 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/api/user.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { User } from '../model/user';
@@ -30,6 +29,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -288,7 +289,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (username !== undefined && username !== null) {
             queryParameters = queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/configuration.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..c038bbc94787446ecda4640d7b486a3a87c9c746 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/configuration.ts
@@ -1,3 +1,5 @@
+import { HttpParameterCodec } from '@angular/common/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/encoder.ts b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/encoder.ts
index f1c6b78c9c8eb60b8c4c3b24b1119401fb47c24d..f3e504196f03f8d5c2ce8722a16b9ffd96649edb 100644
--- a/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v6-not-provided-in-root/builds/with-npm/encoder.ts
@@ -1,18 +1,21 @@
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/pet.service.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/pet.service.ts
index b10ba964446012c4c130a52c953b1184abddf3cc..de386b6ee40b779d3de99afc4c95adb7be11126d 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/pet.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { ApiResponse } from '../model/apiResponse';
@@ -33,6 +32,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -43,6 +43,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -180,7 +181,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (status) {
             queryParameters = queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -235,7 +236,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (tags) {
             queryParameters = queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -423,7 +424,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (name !== undefined) {
@@ -496,7 +497,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (additionalMetadata !== undefined) {
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/store.service.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/store.service.ts
index f8dda35287f9000ab9c8c93f2bb58b103c9d3973..2fa5e819b06808a63372e4f9ee6b53bb32592500 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/store.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { Order } from '../model/order';
@@ -32,6 +31,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/user.service.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/user.service.ts
index 29c60328bd94f38d865de5294dbee56826e2f6b1..c86088f8a6a678854f48dceedd33de7ac3583571 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/api/user.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { User } from '../model/user';
@@ -32,6 +31,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -290,7 +291,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (username !== undefined && username !== null) {
             queryParameters = queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/configuration.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..c038bbc94787446ecda4640d7b486a3a87c9c746 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/configuration.ts
@@ -1,3 +1,5 @@
+import { HttpParameterCodec } from '@angular/common/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/encoder.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/encoder.ts
index f1c6b78c9c8eb60b8c4c3b24b1119401fb47c24d..f3e504196f03f8d5c2ce8722a16b9ffd96649edb 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/default/encoder.ts
@@ -1,18 +1,21 @@
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/pet.service.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/pet.service.ts
index b10ba964446012c4c130a52c953b1184abddf3cc..de386b6ee40b779d3de99afc4c95adb7be11126d 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/pet.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { ApiResponse } from '../model/apiResponse';
@@ -33,6 +32,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -43,6 +43,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -180,7 +181,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (status) {
             queryParameters = queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -235,7 +236,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (tags) {
             queryParameters = queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -423,7 +424,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (name !== undefined) {
@@ -496,7 +497,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (additionalMetadata !== undefined) {
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/store.service.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/store.service.ts
index f8dda35287f9000ab9c8c93f2bb58b103c9d3973..2fa5e819b06808a63372e4f9ee6b53bb32592500 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/store.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { Order } from '../model/order';
@@ -32,6 +31,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/user.service.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/user.service.ts
index 29c60328bd94f38d865de5294dbee56826e2f6b1..c86088f8a6a678854f48dceedd33de7ac3583571 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/api/user.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { User } from '../model/user';
@@ -32,6 +31,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -290,7 +291,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (username !== undefined && username !== null) {
             queryParameters = queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/configuration.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..c038bbc94787446ecda4640d7b486a3a87c9c746 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/configuration.ts
@@ -1,3 +1,5 @@
+import { HttpParameterCodec } from '@angular/common/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/encoder.ts b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/encoder.ts
index f1c6b78c9c8eb60b8c4c3b24b1119401fb47c24d..f3e504196f03f8d5c2ce8722a16b9ffd96649edb 100644
--- a/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v6-provided-in-root/builds/with-npm/encoder.ts
@@ -1,18 +1,21 @@
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/pet.service.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/pet.service.ts
index 5f392341a955a6d888d3285588bd2ef19b451ef6..d7085113ed4cb88cfd03530b871645765633b635 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/pet.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { ApiResponse } from '../model/apiResponse';
@@ -31,6 +30,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -41,6 +41,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -178,7 +179,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (status) {
             queryParameters = queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -233,7 +234,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (tags) {
             queryParameters = queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -421,7 +422,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (name !== undefined) {
@@ -494,7 +495,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (additionalMetadata !== undefined) {
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/store.service.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/store.service.ts
index 003cb591c1f985914dfd9a7b7ef26bc581592756..04d518a1495205a0fb84dd6b60e1e7482583c961 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/store.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { Order } from '../model/order';
@@ -30,6 +29,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/user.service.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/user.service.ts
index 302a73c389e49c6cae9ab77a35e94fe07db86500..446f5c51c277b4c8c55e7ec785324e770d4a0048 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/api/user.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { User } from '../model/user';
@@ -30,6 +29,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -288,7 +289,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (username !== undefined && username !== null) {
             queryParameters = queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/configuration.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..c038bbc94787446ecda4640d7b486a3a87c9c746 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/configuration.ts
@@ -1,3 +1,5 @@
+import { HttpParameterCodec } from '@angular/common/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/encoder.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/encoder.ts
index f1c6b78c9c8eb60b8c4c3b24b1119401fb47c24d..f3e504196f03f8d5c2ce8722a16b9ffd96649edb 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/default/encoder.ts
@@ -1,18 +1,21 @@
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/pet.service.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/pet.service.ts
index 5f392341a955a6d888d3285588bd2ef19b451ef6..d7085113ed4cb88cfd03530b871645765633b635 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/pet.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { ApiResponse } from '../model/apiResponse';
@@ -31,6 +30,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -41,6 +41,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -178,7 +179,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (status) {
             queryParameters = queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -233,7 +234,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (tags) {
             queryParameters = queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -421,7 +422,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (name !== undefined) {
@@ -494,7 +495,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (additionalMetadata !== undefined) {
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/store.service.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/store.service.ts
index 003cb591c1f985914dfd9a7b7ef26bc581592756..04d518a1495205a0fb84dd6b60e1e7482583c961 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/store.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { Order } from '../model/order';
@@ -30,6 +29,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/user.service.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/user.service.ts
index 302a73c389e49c6cae9ab77a35e94fe07db86500..446f5c51c277b4c8c55e7ec785324e770d4a0048 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/api/user.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { User } from '../model/user';
@@ -30,6 +29,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -40,6 +40,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -288,7 +289,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (username !== undefined && username !== null) {
             queryParameters = queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/configuration.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..c038bbc94787446ecda4640d7b486a3a87c9c746 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/configuration.ts
@@ -1,3 +1,5 @@
+import { HttpParameterCodec } from '@angular/common/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/encoder.ts b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/encoder.ts
index f1c6b78c9c8eb60b8c4c3b24b1119401fb47c24d..f3e504196f03f8d5c2ce8722a16b9ffd96649edb 100644
--- a/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v7-not-provided-in-root/builds/with-npm/encoder.ts
@@ -1,18 +1,21 @@
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/pet.service.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/pet.service.ts
index b10ba964446012c4c130a52c953b1184abddf3cc..de386b6ee40b779d3de99afc4c95adb7be11126d 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/pet.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { ApiResponse } from '../model/apiResponse';
@@ -33,6 +32,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -43,6 +43,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -180,7 +181,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (status) {
             queryParameters = queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -235,7 +236,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (tags) {
             queryParameters = queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -423,7 +424,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (name !== undefined) {
@@ -496,7 +497,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (additionalMetadata !== undefined) {
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/store.service.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/store.service.ts
index f8dda35287f9000ab9c8c93f2bb58b103c9d3973..2fa5e819b06808a63372e4f9ee6b53bb32592500 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/store.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { Order } from '../model/order';
@@ -32,6 +31,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/user.service.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/user.service.ts
index 29c60328bd94f38d865de5294dbee56826e2f6b1..c86088f8a6a678854f48dceedd33de7ac3583571 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/api/user.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { User } from '../model/user';
@@ -32,6 +31,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -290,7 +291,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (username !== undefined && username !== null) {
             queryParameters = queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/configuration.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..c038bbc94787446ecda4640d7b486a3a87c9c746 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/configuration.ts
@@ -1,3 +1,5 @@
+import { HttpParameterCodec } from '@angular/common/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/encoder.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/encoder.ts
index f1c6b78c9c8eb60b8c4c3b24b1119401fb47c24d..f3e504196f03f8d5c2ce8722a16b9ffd96649edb 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/default/encoder.ts
@@ -1,18 +1,21 @@
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/pet.service.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/pet.service.ts
index b10ba964446012c4c130a52c953b1184abddf3cc..de386b6ee40b779d3de99afc4c95adb7be11126d 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/pet.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/pet.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { ApiResponse } from '../model/apiResponse';
@@ -33,6 +32,7 @@ export class PetService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -43,6 +43,7 @@ export class PetService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -180,7 +181,7 @@ export class PetService {
             throw new Error('Required parameter status was null or undefined when calling findPetsByStatus.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (status) {
             queryParameters = queryParameters.set('status', status.join(COLLECTION_FORMATS['csv']));
         }
@@ -235,7 +236,7 @@ export class PetService {
             throw new Error('Required parameter tags was null or undefined when calling findPetsByTags.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (tags) {
             queryParameters = queryParameters.set('tags', tags.join(COLLECTION_FORMATS['csv']));
         }
@@ -423,7 +424,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (name !== undefined) {
@@ -496,7 +497,7 @@ export class PetService {
         if (useForm) {
             formParams = new FormData();
         } else {
-            formParams = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+            formParams = new HttpParams({encoder: this.encoder});
         }
 
         if (additionalMetadata !== undefined) {
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/store.service.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/store.service.ts
index f8dda35287f9000ab9c8c93f2bb58b103c9d3973..2fa5e819b06808a63372e4f9ee6b53bb32592500 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/store.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/store.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { Order } from '../model/order';
@@ -32,6 +31,7 @@ export class StoreService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class StoreService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/user.service.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/user.service.ts
index 29c60328bd94f38d865de5294dbee56826e2f6b1..c86088f8a6a678854f48dceedd33de7ac3583571 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/user.service.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/api/user.service.ts
@@ -13,9 +13,8 @@
 
 import { Inject, Injectable, Optional }                      from '@angular/core';
 import { HttpClient, HttpHeaders, HttpParams,
-         HttpResponse, HttpEvent }                           from '@angular/common/http';
-import { CustomHttpUrlEncodingCodec }                        from '../encoder';
-
+         HttpResponse, HttpEvent, HttpParameterCodec }       from '@angular/common/http';
+import { CustomHttpParameterCodec }                          from '../encoder';
 import { Observable }                                        from 'rxjs';
 
 import { User } from '../model/user';
@@ -32,6 +31,7 @@ export class UserService {
     protected basePath = 'http://petstore.swagger.io/v2';
     public defaultHeaders = new HttpHeaders();
     public configuration = new Configuration();
+    public encoder: HttpParameterCodec;
 
     constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string, @Optional() configuration: Configuration) {
 
@@ -42,6 +42,7 @@ export class UserService {
         } else {
             this.configuration.basePath = basePath || this.basePath;
         }
+        this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();
     }
 
     /**
@@ -290,7 +291,7 @@ export class UserService {
             throw new Error('Required parameter password was null or undefined when calling loginUser.');
         }
 
-        let queryParameters = new HttpParams({encoder: new CustomHttpUrlEncodingCodec()});
+        let queryParameters = new HttpParams({encoder: this.encoder});
         if (username !== undefined && username !== null) {
             queryParameters = queryParameters.set('username', <any>username);
         }
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/configuration.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/configuration.ts
index 1132f4adc1756f1d2050279127678722c357b6fb..c038bbc94787446ecda4640d7b486a3a87c9c746 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/configuration.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/configuration.ts
@@ -1,3 +1,5 @@
+import { HttpParameterCodec } from '@angular/common/http';
+
 export interface ConfigurationParameters {
     apiKeys?: {[ key: string ]: string};
     username?: string;
@@ -5,6 +7,7 @@ export interface ConfigurationParameters {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 }
 
 export class Configuration {
@@ -14,6 +17,7 @@ export class Configuration {
     accessToken?: string | (() => string);
     basePath?: string;
     withCredentials?: boolean;
+    encoder?: HttpParameterCodec;
 
     constructor(configurationParameters: ConfigurationParameters = {}) {
         this.apiKeys = configurationParameters.apiKeys;
@@ -22,6 +26,7 @@ export class Configuration {
         this.accessToken = configurationParameters.accessToken;
         this.basePath = configurationParameters.basePath;
         this.withCredentials = configurationParameters.withCredentials;
+        this.encoder = configurationParameters.encoder;
     }
 
     /**
diff --git a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/encoder.ts b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/encoder.ts
index f1c6b78c9c8eb60b8c4c3b24b1119401fb47c24d..f3e504196f03f8d5c2ce8722a16b9ffd96649edb 100644
--- a/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/encoder.ts
+++ b/samples/client/petstore/typescript-angular-v7-provided-in-root/builds/with-npm/encoder.ts
@@ -1,18 +1,21 @@
-    import { HttpUrlEncodingCodec } from '@angular/common/http';
+import { HttpParameterCodec } from '@angular/common/http';
 
 /**
-* CustomHttpUrlEncodingCodec
-* Fix plus sign (+) not encoding, so sent as blank space
-* See: https://github.com/angular/angular/issues/11058#issuecomment-247367318
+* Custom HttpParameterCodec
+* Workaround for https://github.com/angular/angular/issues/18261
 */
-export class CustomHttpUrlEncodingCodec extends HttpUrlEncodingCodec {
+export class CustomHttpParameterCodec implements HttpParameterCodec {
     encodeKey(k: string): string {
-        k = super.encodeKey(k);
-        return k.replace(/\+/gi, '%2B');
+        return encodeURIComponent(k);
     }
     encodeValue(v: string): string {
-        v = super.encodeValue(v);
-        return v.replace(/\+/gi, '%2B');
+        return encodeURIComponent(v);
+    }
+    decodeKey(k: string): string {
+        return decodeURIComponent(k);
+    }
+    decodeValue(v: string): string {
+        return decodeURIComponent(v);
     }
 }
 
diff --git a/samples/client/petstore/typescript-fetch/builds/default/api.ts b/samples/client/petstore/typescript-fetch/builds/default/api.ts
deleted file mode 100644
index 4a39a9c8b5993687ab6d25268f2cb82ca5ebc79d..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/default/api.ts
+++ /dev/null
@@ -1,1928 +0,0 @@
-/// <reference path="./custom.d.ts" />
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * OpenAPI spec version: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-
-export const BASE_PATH = "http://petstore.swagger.io/v2".replace(/\/+$/, "");
-
-/**
- * Describes the result of uploading an image resource
- * @export
- * @interface ApiResponse
- */
-export interface ApiResponse {
-    /**
-     * 
-     * @type {number}
-     * @memberof ApiResponse
-     */
-    code?: number;
-    /**
-     * 
-     * @type {string}
-     * @memberof ApiResponse
-     */
-    type?: string;
-    /**
-     * 
-     * @type {string}
-     * @memberof ApiResponse
-     */
-    message?: string;
-}
-
-/**
- * A category for a pet
- * @export
- * @interface Category
- */
-export interface Category {
-    /**
-     * 
-     * @type {number}
-     * @memberof Category
-     */
-    id?: number;
-    /**
-     * 
-     * @type {string}
-     * @memberof Category
-     */
-    name?: string;
-}
-
-/**
- * An order for a pets from the pet store
- * @export
- * @interface Order
- */
-export interface Order {
-    /**
-     * 
-     * @type {number}
-     * @memberof Order
-     */
-    id?: number;
-    /**
-     * 
-     * @type {number}
-     * @memberof Order
-     */
-    petId?: number;
-    /**
-     * 
-     * @type {number}
-     * @memberof Order
-     */
-    quantity?: number;
-    /**
-     * 
-     * @type {Date}
-     * @memberof Order
-     */
-    shipDate?: Date;
-    /**
-     * Order Status
-     * @type {string}
-     * @memberof Order
-     */
-    status?: Order.StatusEnum;
-    /**
-     * 
-     * @type {boolean}
-     * @memberof Order
-     */
-    complete?: boolean;
-}
-
-/**
- * @export
- * @namespace Order
- */
-export namespace Order {
-    /**
-     * @export
-     * @enum {string}
-     */
-    export enum StatusEnum {
-        Placed = 'placed',
-        Approved = 'approved',
-        Delivered = 'delivered'
-    }
-}
-
-/**
- * A pet for sale in the pet store
- * @export
- * @interface Pet
- */
-export interface Pet {
-    /**
-     * 
-     * @type {number}
-     * @memberof Pet
-     */
-    id?: number;
-    /**
-     * 
-     * @type {Category}
-     * @memberof Pet
-     */
-    category?: Category;
-    /**
-     * 
-     * @type {string}
-     * @memberof Pet
-     */
-    name: string;
-    /**
-     * 
-     * @type {Array<string>}
-     * @memberof Pet
-     */
-    photoUrls: Array<string>;
-    /**
-     * 
-     * @type {Array<Tag>}
-     * @memberof Pet
-     */
-    tags?: Array<Tag>;
-    /**
-     * pet status in the store
-     * @type {string}
-     * @memberof Pet
-     */
-    status?: Pet.StatusEnum;
-}
-
-/**
- * @export
- * @namespace Pet
- */
-export namespace Pet {
-    /**
-     * @export
-     * @enum {string}
-     */
-    export enum StatusEnum {
-        Available = 'available',
-        Pending = 'pending',
-        Sold = 'sold'
-    }
-}
-
-/**
- * A tag for a pet
- * @export
- * @interface Tag
- */
-export interface Tag {
-    /**
-     * 
-     * @type {number}
-     * @memberof Tag
-     */
-    id?: number;
-    /**
-     * 
-     * @type {string}
-     * @memberof Tag
-     */
-    name?: string;
-}
-
-/**
- * A User who is purchasing from the pet store
- * @export
- * @interface User
- */
-export interface User {
-    /**
-     * 
-     * @type {number}
-     * @memberof User
-     */
-    id?: number;
-    /**
-     * 
-     * @type {string}
-     * @memberof User
-     */
-    username?: string;
-    /**
-     * 
-     * @type {string}
-     * @memberof User
-     */
-    firstName?: string;
-    /**
-     * 
-     * @type {string}
-     * @memberof User
-     */
-    lastName?: string;
-    /**
-     * 
-     * @type {string}
-     * @memberof User
-     */
-    email?: string;
-    /**
-     * 
-     * @type {string}
-     * @memberof User
-     */
-    password?: string;
-    /**
-     * 
-     * @type {string}
-     * @memberof User
-     */
-    phone?: string;
-    /**
-     * User Status
-     * @type {number}
-     * @memberof User
-     */
-    userStatus?: number;
-}
-
-
-/**
- * PetApi - fetch parameter creator
- * @export
- */
-export const PetApiFetchParamCreator = function (configuration?: Configuration) {
-    return {
-        /**
-         * 
-         * @summary Add a new pet to the store
-         * @param {Pet} pet Pet object that needs to be added to the store
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        addPet(pet: Pet, options: any = {}): FetchArgs {
-            // verify required parameter 'pet' is not null or undefined
-            if (pet === null || pet === undefined) {
-                throw new RequiredError('pet','Required parameter pet was null or undefined when calling addPet.');
-            }
-            const localVarPath = `/pet`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'POST' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            // authentication petstore_auth required
-            // oauth required
-            if (configuration && configuration.accessToken) {
-				const localVarAccessTokenValue = typeof configuration.accessToken === 'function'
-					? configuration.accessToken("petstore_auth", ["write:pets", "read:pets"])
-					: configuration.accessToken;
-                localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue;
-            }
-
-            localVarHeaderParameter['Content-Type'] = 'application/json';
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-            const needsSerialization = (<any>"Pet" !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
-            localVarRequestOptions.body =  needsSerialization ? JSON.stringify(pet || {}) : (pet || "");
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary Deletes a pet
-         * @param {number} petId Pet id to delete
-         * @param {string} [apiKey] 
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        deletePet(petId: number, apiKey?: string, options: any = {}): FetchArgs {
-            // verify required parameter 'petId' is not null or undefined
-            if (petId === null || petId === undefined) {
-                throw new RequiredError('petId','Required parameter petId was null or undefined when calling deletePet.');
-            }
-            const localVarPath = `/pet/{petId}`
-                .replace(`{${"petId"}}`, encodeURIComponent(String(petId)));
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'DELETE' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            // authentication petstore_auth required
-            // oauth required
-            if (configuration && configuration.accessToken) {
-				const localVarAccessTokenValue = typeof configuration.accessToken === 'function'
-					? configuration.accessToken("petstore_auth", ["write:pets", "read:pets"])
-					: configuration.accessToken;
-                localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue;
-            }
-
-            if (apiKey !== undefined && apiKey !== null) {
-                localVarHeaderParameter['api_key'] = String(apiKey);
-            }
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * Multiple status values can be provided with comma separated strings
-         * @summary Finds Pets by status
-         * @param {Array<'available' | 'pending' | 'sold'>} status Status values that need to be considered for filter
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options: any = {}): FetchArgs {
-            // verify required parameter 'status' is not null or undefined
-            if (status === null || status === undefined) {
-                throw new RequiredError('status','Required parameter status was null or undefined when calling findPetsByStatus.');
-            }
-            const localVarPath = `/pet/findByStatus`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'GET' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            // authentication petstore_auth required
-            // oauth required
-            if (configuration && configuration.accessToken) {
-				const localVarAccessTokenValue = typeof configuration.accessToken === 'function'
-					? configuration.accessToken("petstore_auth", ["write:pets", "read:pets"])
-					: configuration.accessToken;
-                localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue;
-            }
-
-            if (status) {
-                localVarQueryParameter['status'] = status.join(COLLECTION_FORMATS["csv"]);
-            }
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
-         * @summary Finds Pets by tags
-         * @param {Array<string>} tags Tags to filter by
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        findPetsByTags(tags: Array<string>, options: any = {}): FetchArgs {
-            // verify required parameter 'tags' is not null or undefined
-            if (tags === null || tags === undefined) {
-                throw new RequiredError('tags','Required parameter tags was null or undefined when calling findPetsByTags.');
-            }
-            const localVarPath = `/pet/findByTags`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'GET' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            // authentication petstore_auth required
-            // oauth required
-            if (configuration && configuration.accessToken) {
-				const localVarAccessTokenValue = typeof configuration.accessToken === 'function'
-					? configuration.accessToken("petstore_auth", ["write:pets", "read:pets"])
-					: configuration.accessToken;
-                localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue;
-            }
-
-            if (tags) {
-                localVarQueryParameter['tags'] = tags.join(COLLECTION_FORMATS["csv"]);
-            }
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * Returns a single pet
-         * @summary Find pet by ID
-         * @param {number} petId ID of pet to return
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getPetById(petId: number, options: any = {}): FetchArgs {
-            // verify required parameter 'petId' is not null or undefined
-            if (petId === null || petId === undefined) {
-                throw new RequiredError('petId','Required parameter petId was null or undefined when calling getPetById.');
-            }
-            const localVarPath = `/pet/{petId}`
-                .replace(`{${"petId"}}`, encodeURIComponent(String(petId)));
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'GET' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            // authentication api_key required
-            if (configuration && configuration.apiKey) {
-                const localVarApiKeyValue = typeof configuration.apiKey === 'function'
-					? configuration.apiKey("api_key")
-					: configuration.apiKey;
-                localVarHeaderParameter["api_key"] = localVarApiKeyValue;
-            }
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary Update an existing pet
-         * @param {Pet} pet Pet object that needs to be added to the store
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        updatePet(pet: Pet, options: any = {}): FetchArgs {
-            // verify required parameter 'pet' is not null or undefined
-            if (pet === null || pet === undefined) {
-                throw new RequiredError('pet','Required parameter pet was null or undefined when calling updatePet.');
-            }
-            const localVarPath = `/pet`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'PUT' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            // authentication petstore_auth required
-            // oauth required
-            if (configuration && configuration.accessToken) {
-				const localVarAccessTokenValue = typeof configuration.accessToken === 'function'
-					? configuration.accessToken("petstore_auth", ["write:pets", "read:pets"])
-					: configuration.accessToken;
-                localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue;
-            }
-
-            localVarHeaderParameter['Content-Type'] = 'application/json';
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-            const needsSerialization = (<any>"Pet" !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
-            localVarRequestOptions.body =  needsSerialization ? JSON.stringify(pet || {}) : (pet || "");
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary Updates a pet in the store with form data
-         * @param {number} petId ID of pet that needs to be updated
-         * @param {string} [name] Updated name of the pet
-         * @param {string} [status] Updated status of the pet
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        updatePetWithForm(petId: number, name?: string, status?: string, options: any = {}): FetchArgs {
-            // verify required parameter 'petId' is not null or undefined
-            if (petId === null || petId === undefined) {
-                throw new RequiredError('petId','Required parameter petId was null or undefined when calling updatePetWithForm.');
-            }
-            const localVarPath = `/pet/{petId}`
-                .replace(`{${"petId"}}`, encodeURIComponent(String(petId)));
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'POST' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-            const localVarFormParams = new url.URLSearchParams();
-
-            // authentication petstore_auth required
-            // oauth required
-            if (configuration && configuration.accessToken) {
-				const localVarAccessTokenValue = typeof configuration.accessToken === 'function'
-					? configuration.accessToken("petstore_auth", ["write:pets", "read:pets"])
-					: configuration.accessToken;
-                localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue;
-            }
-
-            if (name !== undefined) {
-                localVarFormParams.set('name', name as any);
-            }
-
-            if (status !== undefined) {
-                localVarFormParams.set('status', status as any);
-            }
-
-            localVarHeaderParameter['Content-Type'] = 'application/x-www-form-urlencoded';
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-            localVarRequestOptions.body = localVarFormParams.toString();
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary uploads an image
-         * @param {number} petId ID of pet to update
-         * @param {string} [additionalMetadata] Additional data to pass to server
-         * @param {any} [file] file to upload
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        uploadFile(petId: number, additionalMetadata?: string, file?: any, options: any = {}): FetchArgs {
-            // verify required parameter 'petId' is not null or undefined
-            if (petId === null || petId === undefined) {
-                throw new RequiredError('petId','Required parameter petId was null or undefined when calling uploadFile.');
-            }
-            const localVarPath = `/pet/{petId}/uploadImage`
-                .replace(`{${"petId"}}`, encodeURIComponent(String(petId)));
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'POST' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-            const localVarFormParams = new url.URLSearchParams();
-
-            // authentication petstore_auth required
-            // oauth required
-            if (configuration && configuration.accessToken) {
-				const localVarAccessTokenValue = typeof configuration.accessToken === 'function'
-					? configuration.accessToken("petstore_auth", ["write:pets", "read:pets"])
-					: configuration.accessToken;
-                localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue;
-            }
-
-            if (additionalMetadata !== undefined) {
-                localVarFormParams.set('additionalMetadata', additionalMetadata as any);
-            }
-
-            if (file !== undefined) {
-                localVarFormParams.set('file', file as any);
-            }
-
-            localVarHeaderParameter['Content-Type'] = 'application/x-www-form-urlencoded';
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-            localVarRequestOptions.body = localVarFormParams.toString();
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-    }
-};
-
-/**
- * PetApi - functional programming interface
- * @export
- */
-export const PetApiFp = function(configuration?: Configuration) {
-    return {
-        /**
-         * 
-         * @summary Add a new pet to the store
-         * @param {Pet} pet Pet object that needs to be added to the store
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        addPet(pet: Pet, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = PetApiFetchParamCreator(configuration).addPet(pet, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary Deletes a pet
-         * @param {number} petId Pet id to delete
-         * @param {string} [apiKey] 
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        deletePet(petId: number, apiKey?: string, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = PetApiFetchParamCreator(configuration).deletePet(petId, apiKey, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * Multiple status values can be provided with comma separated strings
-         * @summary Finds Pets by status
-         * @param {Array<'available' | 'pending' | 'sold'>} status Status values that need to be considered for filter
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Array<Pet>> {
-            const localVarFetchArgs = PetApiFetchParamCreator(configuration).findPetsByStatus(status, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response.json();
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
-         * @summary Finds Pets by tags
-         * @param {Array<string>} tags Tags to filter by
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        findPetsByTags(tags: Array<string>, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Array<Pet>> {
-            const localVarFetchArgs = PetApiFetchParamCreator(configuration).findPetsByTags(tags, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response.json();
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * Returns a single pet
-         * @summary Find pet by ID
-         * @param {number} petId ID of pet to return
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getPetById(petId: number, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Pet> {
-            const localVarFetchArgs = PetApiFetchParamCreator(configuration).getPetById(petId, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response.json();
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary Update an existing pet
-         * @param {Pet} pet Pet object that needs to be added to the store
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        updatePet(pet: Pet, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = PetApiFetchParamCreator(configuration).updatePet(pet, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary Updates a pet in the store with form data
-         * @param {number} petId ID of pet that needs to be updated
-         * @param {string} [name] Updated name of the pet
-         * @param {string} [status] Updated status of the pet
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        updatePetWithForm(petId: number, name?: string, status?: string, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = PetApiFetchParamCreator(configuration).updatePetWithForm(petId, name, status, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary uploads an image
-         * @param {number} petId ID of pet to update
-         * @param {string} [additionalMetadata] Additional data to pass to server
-         * @param {any} [file] file to upload
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<ApiResponse> {
-            const localVarFetchArgs = PetApiFetchParamCreator(configuration).uploadFile(petId, additionalMetadata, file, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response.json();
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-    }
-};
-
-/**
- * PetApi - factory interface
- * @export
- */
-export const PetApiFactory = function (configuration?: Configuration, fetch?: FetchAPI, basePath?: string) {
-    return {
-        /**
-         * 
-         * @summary Add a new pet to the store
-         * @param {Pet} pet Pet object that needs to be added to the store
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        addPet(pet: Pet, options?: any) {
-            return PetApiFp(configuration).addPet(pet, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary Deletes a pet
-         * @param {number} petId Pet id to delete
-         * @param {string} [apiKey] 
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        deletePet(petId: number, apiKey?: string, options?: any) {
-            return PetApiFp(configuration).deletePet(petId, apiKey, options)(fetch, basePath);
-        },
-        /**
-         * Multiple status values can be provided with comma separated strings
-         * @summary Finds Pets by status
-         * @param {Array<'available' | 'pending' | 'sold'>} status Status values that need to be considered for filter
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any) {
-            return PetApiFp(configuration).findPetsByStatus(status, options)(fetch, basePath);
-        },
-        /**
-         * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
-         * @summary Finds Pets by tags
-         * @param {Array<string>} tags Tags to filter by
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        findPetsByTags(tags: Array<string>, options?: any) {
-            return PetApiFp(configuration).findPetsByTags(tags, options)(fetch, basePath);
-        },
-        /**
-         * Returns a single pet
-         * @summary Find pet by ID
-         * @param {number} petId ID of pet to return
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getPetById(petId: number, options?: any) {
-            return PetApiFp(configuration).getPetById(petId, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary Update an existing pet
-         * @param {Pet} pet Pet object that needs to be added to the store
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        updatePet(pet: Pet, options?: any) {
-            return PetApiFp(configuration).updatePet(pet, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary Updates a pet in the store with form data
-         * @param {number} petId ID of pet that needs to be updated
-         * @param {string} [name] Updated name of the pet
-         * @param {string} [status] Updated status of the pet
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        updatePetWithForm(petId: number, name?: string, status?: string, options?: any) {
-            return PetApiFp(configuration).updatePetWithForm(petId, name, status, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary uploads an image
-         * @param {number} petId ID of pet to update
-         * @param {string} [additionalMetadata] Additional data to pass to server
-         * @param {any} [file] file to upload
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any) {
-            return PetApiFp(configuration).uploadFile(petId, additionalMetadata, file, options)(fetch, basePath);
-        },
-    };
-};
-
-/**
- * PetApi - object-oriented interface
- * @export
- * @class PetApi
- * @extends {BaseAPI}
- */
-export class PetApi extends BaseAPI {
-    /**
-     * 
-     * @summary Add a new pet to the store
-     * @param {Pet} pet Pet object that needs to be added to the store
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof PetApi
-     */
-    public addPet(pet: Pet, options?: any) {
-        return PetApiFp(this.configuration).addPet(pet, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary Deletes a pet
-     * @param {number} petId Pet id to delete
-     * @param {string} [apiKey] 
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof PetApi
-     */
-    public deletePet(petId: number, apiKey?: string, options?: any) {
-        return PetApiFp(this.configuration).deletePet(petId, apiKey, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * Multiple status values can be provided with comma separated strings
-     * @summary Finds Pets by status
-     * @param {Array<'available' | 'pending' | 'sold'>} status Status values that need to be considered for filter
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof PetApi
-     */
-    public findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any) {
-        return PetApiFp(this.configuration).findPetsByStatus(status, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
-     * @summary Finds Pets by tags
-     * @param {Array<string>} tags Tags to filter by
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof PetApi
-     */
-    public findPetsByTags(tags: Array<string>, options?: any) {
-        return PetApiFp(this.configuration).findPetsByTags(tags, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * Returns a single pet
-     * @summary Find pet by ID
-     * @param {number} petId ID of pet to return
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof PetApi
-     */
-    public getPetById(petId: number, options?: any) {
-        return PetApiFp(this.configuration).getPetById(petId, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary Update an existing pet
-     * @param {Pet} pet Pet object that needs to be added to the store
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof PetApi
-     */
-    public updatePet(pet: Pet, options?: any) {
-        return PetApiFp(this.configuration).updatePet(pet, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary Updates a pet in the store with form data
-     * @param {number} petId ID of pet that needs to be updated
-     * @param {string} [name] Updated name of the pet
-     * @param {string} [status] Updated status of the pet
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof PetApi
-     */
-    public updatePetWithForm(petId: number, name?: string, status?: string, options?: any) {
-        return PetApiFp(this.configuration).updatePetWithForm(petId, name, status, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary uploads an image
-     * @param {number} petId ID of pet to update
-     * @param {string} [additionalMetadata] Additional data to pass to server
-     * @param {any} [file] file to upload
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof PetApi
-     */
-    public uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any) {
-        return PetApiFp(this.configuration).uploadFile(petId, additionalMetadata, file, options)(this.fetch, this.basePath);
-    }
-
-}
-
-/**
- * StoreApi - fetch parameter creator
- * @export
- */
-export const StoreApiFetchParamCreator = function (configuration?: Configuration) {
-    return {
-        /**
-         * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
-         * @summary Delete purchase order by ID
-         * @param {string} orderId ID of the order that needs to be deleted
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        deleteOrder(orderId: string, options: any = {}): FetchArgs {
-            // verify required parameter 'orderId' is not null or undefined
-            if (orderId === null || orderId === undefined) {
-                throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling deleteOrder.');
-            }
-            const localVarPath = `/store/order/{orderId}`
-                .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId)));
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'DELETE' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * Returns a map of status codes to quantities
-         * @summary Returns pet inventories by status
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getInventory(options: any = {}): FetchArgs {
-            const localVarPath = `/store/inventory`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'GET' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            // authentication api_key required
-            if (configuration && configuration.apiKey) {
-                const localVarApiKeyValue = typeof configuration.apiKey === 'function'
-					? configuration.apiKey("api_key")
-					: configuration.apiKey;
-                localVarHeaderParameter["api_key"] = localVarApiKeyValue;
-            }
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
-         * @summary Find purchase order by ID
-         * @param {number} orderId ID of pet that needs to be fetched
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getOrderById(orderId: number, options: any = {}): FetchArgs {
-            // verify required parameter 'orderId' is not null or undefined
-            if (orderId === null || orderId === undefined) {
-                throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling getOrderById.');
-            }
-            const localVarPath = `/store/order/{orderId}`
-                .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId)));
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'GET' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary Place an order for a pet
-         * @param {Order} order order placed for purchasing the pet
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        placeOrder(order: Order, options: any = {}): FetchArgs {
-            // verify required parameter 'order' is not null or undefined
-            if (order === null || order === undefined) {
-                throw new RequiredError('order','Required parameter order was null or undefined when calling placeOrder.');
-            }
-            const localVarPath = `/store/order`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'POST' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarHeaderParameter['Content-Type'] = 'application/json';
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-            const needsSerialization = (<any>"Order" !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
-            localVarRequestOptions.body =  needsSerialization ? JSON.stringify(order || {}) : (order || "");
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-    }
-};
-
-/**
- * StoreApi - functional programming interface
- * @export
- */
-export const StoreApiFp = function(configuration?: Configuration) {
-    return {
-        /**
-         * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
-         * @summary Delete purchase order by ID
-         * @param {string} orderId ID of the order that needs to be deleted
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        deleteOrder(orderId: string, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = StoreApiFetchParamCreator(configuration).deleteOrder(orderId, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * Returns a map of status codes to quantities
-         * @summary Returns pet inventories by status
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getInventory(options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<{ [key: string]: number; }> {
-            const localVarFetchArgs = StoreApiFetchParamCreator(configuration).getInventory(options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response.json();
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
-         * @summary Find purchase order by ID
-         * @param {number} orderId ID of pet that needs to be fetched
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getOrderById(orderId: number, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Order> {
-            const localVarFetchArgs = StoreApiFetchParamCreator(configuration).getOrderById(orderId, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response.json();
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary Place an order for a pet
-         * @param {Order} order order placed for purchasing the pet
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        placeOrder(order: Order, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Order> {
-            const localVarFetchArgs = StoreApiFetchParamCreator(configuration).placeOrder(order, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response.json();
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-    }
-};
-
-/**
- * StoreApi - factory interface
- * @export
- */
-export const StoreApiFactory = function (configuration?: Configuration, fetch?: FetchAPI, basePath?: string) {
-    return {
-        /**
-         * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
-         * @summary Delete purchase order by ID
-         * @param {string} orderId ID of the order that needs to be deleted
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        deleteOrder(orderId: string, options?: any) {
-            return StoreApiFp(configuration).deleteOrder(orderId, options)(fetch, basePath);
-        },
-        /**
-         * Returns a map of status codes to quantities
-         * @summary Returns pet inventories by status
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getInventory(options?: any) {
-            return StoreApiFp(configuration).getInventory(options)(fetch, basePath);
-        },
-        /**
-         * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
-         * @summary Find purchase order by ID
-         * @param {number} orderId ID of pet that needs to be fetched
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getOrderById(orderId: number, options?: any) {
-            return StoreApiFp(configuration).getOrderById(orderId, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary Place an order for a pet
-         * @param {Order} order order placed for purchasing the pet
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        placeOrder(order: Order, options?: any) {
-            return StoreApiFp(configuration).placeOrder(order, options)(fetch, basePath);
-        },
-    };
-};
-
-/**
- * StoreApi - object-oriented interface
- * @export
- * @class StoreApi
- * @extends {BaseAPI}
- */
-export class StoreApi extends BaseAPI {
-    /**
-     * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
-     * @summary Delete purchase order by ID
-     * @param {string} orderId ID of the order that needs to be deleted
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof StoreApi
-     */
-    public deleteOrder(orderId: string, options?: any) {
-        return StoreApiFp(this.configuration).deleteOrder(orderId, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * Returns a map of status codes to quantities
-     * @summary Returns pet inventories by status
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof StoreApi
-     */
-    public getInventory(options?: any) {
-        return StoreApiFp(this.configuration).getInventory(options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
-     * @summary Find purchase order by ID
-     * @param {number} orderId ID of pet that needs to be fetched
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof StoreApi
-     */
-    public getOrderById(orderId: number, options?: any) {
-        return StoreApiFp(this.configuration).getOrderById(orderId, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary Place an order for a pet
-     * @param {Order} order order placed for purchasing the pet
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof StoreApi
-     */
-    public placeOrder(order: Order, options?: any) {
-        return StoreApiFp(this.configuration).placeOrder(order, options)(this.fetch, this.basePath);
-    }
-
-}
-
-/**
- * UserApi - fetch parameter creator
- * @export
- */
-export const UserApiFetchParamCreator = function (configuration?: Configuration) {
-    return {
-        /**
-         * This can only be done by the logged in user.
-         * @summary Create user
-         * @param {User} user Created user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        createUser(user: User, options: any = {}): FetchArgs {
-            // verify required parameter 'user' is not null or undefined
-            if (user === null || user === undefined) {
-                throw new RequiredError('user','Required parameter user was null or undefined when calling createUser.');
-            }
-            const localVarPath = `/user`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'POST' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarHeaderParameter['Content-Type'] = 'application/json';
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-            const needsSerialization = (<any>"User" !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
-            localVarRequestOptions.body =  needsSerialization ? JSON.stringify(user || {}) : (user || "");
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary Creates list of users with given input array
-         * @param {Array<User>} user List of user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        createUsersWithArrayInput(user: Array<User>, options: any = {}): FetchArgs {
-            // verify required parameter 'user' is not null or undefined
-            if (user === null || user === undefined) {
-                throw new RequiredError('user','Required parameter user was null or undefined when calling createUsersWithArrayInput.');
-            }
-            const localVarPath = `/user/createWithArray`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'POST' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarHeaderParameter['Content-Type'] = 'application/json';
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-            const needsSerialization = (<any>"Array&lt;User&gt;" !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
-            localVarRequestOptions.body =  needsSerialization ? JSON.stringify(user || {}) : (user || "");
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary Creates list of users with given input array
-         * @param {Array<User>} user List of user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        createUsersWithListInput(user: Array<User>, options: any = {}): FetchArgs {
-            // verify required parameter 'user' is not null or undefined
-            if (user === null || user === undefined) {
-                throw new RequiredError('user','Required parameter user was null or undefined when calling createUsersWithListInput.');
-            }
-            const localVarPath = `/user/createWithList`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'POST' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarHeaderParameter['Content-Type'] = 'application/json';
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-            const needsSerialization = (<any>"Array&lt;User&gt;" !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
-            localVarRequestOptions.body =  needsSerialization ? JSON.stringify(user || {}) : (user || "");
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * This can only be done by the logged in user.
-         * @summary Delete user
-         * @param {string} username The name that needs to be deleted
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        deleteUser(username: string, options: any = {}): FetchArgs {
-            // verify required parameter 'username' is not null or undefined
-            if (username === null || username === undefined) {
-                throw new RequiredError('username','Required parameter username was null or undefined when calling deleteUser.');
-            }
-            const localVarPath = `/user/{username}`
-                .replace(`{${"username"}}`, encodeURIComponent(String(username)));
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'DELETE' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary Get user by user name
-         * @param {string} username The name that needs to be fetched. Use user1 for testing.
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getUserByName(username: string, options: any = {}): FetchArgs {
-            // verify required parameter 'username' is not null or undefined
-            if (username === null || username === undefined) {
-                throw new RequiredError('username','Required parameter username was null or undefined when calling getUserByName.');
-            }
-            const localVarPath = `/user/{username}`
-                .replace(`{${"username"}}`, encodeURIComponent(String(username)));
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'GET' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary Logs user into the system
-         * @param {string} username The user name for login
-         * @param {string} password The password for login in clear text
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        loginUser(username: string, password: string, options: any = {}): FetchArgs {
-            // verify required parameter 'username' is not null or undefined
-            if (username === null || username === undefined) {
-                throw new RequiredError('username','Required parameter username was null or undefined when calling loginUser.');
-            }
-            // verify required parameter 'password' is not null or undefined
-            if (password === null || password === undefined) {
-                throw new RequiredError('password','Required parameter password was null or undefined when calling loginUser.');
-            }
-            const localVarPath = `/user/login`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'GET' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            if (username !== undefined) {
-                localVarQueryParameter['username'] = username;
-            }
-
-            if (password !== undefined) {
-                localVarQueryParameter['password'] = password;
-            }
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * 
-         * @summary Logs out current logged in user session
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        logoutUser(options: any = {}): FetchArgs {
-            const localVarPath = `/user/logout`;
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'GET' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-        /**
-         * This can only be done by the logged in user.
-         * @summary Updated user
-         * @param {string} username name that need to be deleted
-         * @param {User} user Updated user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        updateUser(username: string, user: User, options: any = {}): FetchArgs {
-            // verify required parameter 'username' is not null or undefined
-            if (username === null || username === undefined) {
-                throw new RequiredError('username','Required parameter username was null or undefined when calling updateUser.');
-            }
-            // verify required parameter 'user' is not null or undefined
-            if (user === null || user === undefined) {
-                throw new RequiredError('user','Required parameter user was null or undefined when calling updateUser.');
-            }
-            const localVarPath = `/user/{username}`
-                .replace(`{${"username"}}`, encodeURIComponent(String(username)));
-            const localVarUrlObj = url.parse(localVarPath, true);
-            const localVarRequestOptions = Object.assign({ method: 'PUT' }, options);
-            const localVarHeaderParameter = {} as any;
-            const localVarQueryParameter = {} as any;
-
-            localVarHeaderParameter['Content-Type'] = 'application/json';
-
-            localVarUrlObj.query = Object.assign({}, localVarUrlObj.query, localVarQueryParameter, options.query);
-            // fix override query string Detail: https://stackoverflow.com/a/7517673/1077943
-            delete localVarUrlObj.search;
-            localVarRequestOptions.headers = Object.assign({}, localVarHeaderParameter, options.headers);
-            const needsSerialization = (<any>"User" !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json';
-            localVarRequestOptions.body =  needsSerialization ? JSON.stringify(user || {}) : (user || "");
-
-            return {
-                url: url.format(localVarUrlObj),
-                options: localVarRequestOptions,
-            };
-        },
-    }
-};
-
-/**
- * UserApi - functional programming interface
- * @export
- */
-export const UserApiFp = function(configuration?: Configuration) {
-    return {
-        /**
-         * This can only be done by the logged in user.
-         * @summary Create user
-         * @param {User} user Created user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        createUser(user: User, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = UserApiFetchParamCreator(configuration).createUser(user, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary Creates list of users with given input array
-         * @param {Array<User>} user List of user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        createUsersWithArrayInput(user: Array<User>, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = UserApiFetchParamCreator(configuration).createUsersWithArrayInput(user, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary Creates list of users with given input array
-         * @param {Array<User>} user List of user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        createUsersWithListInput(user: Array<User>, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = UserApiFetchParamCreator(configuration).createUsersWithListInput(user, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * This can only be done by the logged in user.
-         * @summary Delete user
-         * @param {string} username The name that needs to be deleted
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        deleteUser(username: string, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = UserApiFetchParamCreator(configuration).deleteUser(username, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary Get user by user name
-         * @param {string} username The name that needs to be fetched. Use user1 for testing.
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getUserByName(username: string, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<User> {
-            const localVarFetchArgs = UserApiFetchParamCreator(configuration).getUserByName(username, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response.json();
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary Logs user into the system
-         * @param {string} username The user name for login
-         * @param {string} password The password for login in clear text
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        loginUser(username: string, password: string, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<string> {
-            const localVarFetchArgs = UserApiFetchParamCreator(configuration).loginUser(username, password, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response.json();
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * 
-         * @summary Logs out current logged in user session
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        logoutUser(options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = UserApiFetchParamCreator(configuration).logoutUser(options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-        /**
-         * This can only be done by the logged in user.
-         * @summary Updated user
-         * @param {string} username name that need to be deleted
-         * @param {User} user Updated user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        updateUser(username: string, user: User, options?: any): (fetch?: FetchAPI, basePath?: string) => Promise<Response> {
-            const localVarFetchArgs = UserApiFetchParamCreator(configuration).updateUser(username, user, options);
-            return (fetch: FetchAPI = portableFetch, basePath: string = BASE_PATH) => {
-                return fetch(basePath + localVarFetchArgs.url, localVarFetchArgs.options).then((response) => {
-                    if (response.status >= 200 && response.status < 300) {
-                        return response;
-                    } else {
-                        throw response;
-                    }
-                });
-            };
-        },
-    }
-};
-
-/**
- * UserApi - factory interface
- * @export
- */
-export const UserApiFactory = function (configuration?: Configuration, fetch?: FetchAPI, basePath?: string) {
-    return {
-        /**
-         * This can only be done by the logged in user.
-         * @summary Create user
-         * @param {User} user Created user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        createUser(user: User, options?: any) {
-            return UserApiFp(configuration).createUser(user, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary Creates list of users with given input array
-         * @param {Array<User>} user List of user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        createUsersWithArrayInput(user: Array<User>, options?: any) {
-            return UserApiFp(configuration).createUsersWithArrayInput(user, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary Creates list of users with given input array
-         * @param {Array<User>} user List of user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        createUsersWithListInput(user: Array<User>, options?: any) {
-            return UserApiFp(configuration).createUsersWithListInput(user, options)(fetch, basePath);
-        },
-        /**
-         * This can only be done by the logged in user.
-         * @summary Delete user
-         * @param {string} username The name that needs to be deleted
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        deleteUser(username: string, options?: any) {
-            return UserApiFp(configuration).deleteUser(username, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary Get user by user name
-         * @param {string} username The name that needs to be fetched. Use user1 for testing.
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        getUserByName(username: string, options?: any) {
-            return UserApiFp(configuration).getUserByName(username, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary Logs user into the system
-         * @param {string} username The user name for login
-         * @param {string} password The password for login in clear text
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        loginUser(username: string, password: string, options?: any) {
-            return UserApiFp(configuration).loginUser(username, password, options)(fetch, basePath);
-        },
-        /**
-         * 
-         * @summary Logs out current logged in user session
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        logoutUser(options?: any) {
-            return UserApiFp(configuration).logoutUser(options)(fetch, basePath);
-        },
-        /**
-         * This can only be done by the logged in user.
-         * @summary Updated user
-         * @param {string} username name that need to be deleted
-         * @param {User} user Updated user object
-         * @param {*} [options] Override http request option.
-         * @throws {RequiredError}
-         */
-        updateUser(username: string, user: User, options?: any) {
-            return UserApiFp(configuration).updateUser(username, user, options)(fetch, basePath);
-        },
-    };
-};
-
-/**
- * UserApi - object-oriented interface
- * @export
- * @class UserApi
- * @extends {BaseAPI}
- */
-export class UserApi extends BaseAPI {
-    /**
-     * This can only be done by the logged in user.
-     * @summary Create user
-     * @param {User} user Created user object
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof UserApi
-     */
-    public createUser(user: User, options?: any) {
-        return UserApiFp(this.configuration).createUser(user, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary Creates list of users with given input array
-     * @param {Array<User>} user List of user object
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof UserApi
-     */
-    public createUsersWithArrayInput(user: Array<User>, options?: any) {
-        return UserApiFp(this.configuration).createUsersWithArrayInput(user, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary Creates list of users with given input array
-     * @param {Array<User>} user List of user object
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof UserApi
-     */
-    public createUsersWithListInput(user: Array<User>, options?: any) {
-        return UserApiFp(this.configuration).createUsersWithListInput(user, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * This can only be done by the logged in user.
-     * @summary Delete user
-     * @param {string} username The name that needs to be deleted
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof UserApi
-     */
-    public deleteUser(username: string, options?: any) {
-        return UserApiFp(this.configuration).deleteUser(username, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary Get user by user name
-     * @param {string} username The name that needs to be fetched. Use user1 for testing.
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof UserApi
-     */
-    public getUserByName(username: string, options?: any) {
-        return UserApiFp(this.configuration).getUserByName(username, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary Logs user into the system
-     * @param {string} username The user name for login
-     * @param {string} password The password for login in clear text
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof UserApi
-     */
-    public loginUser(username: string, password: string, options?: any) {
-        return UserApiFp(this.configuration).loginUser(username, password, options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * 
-     * @summary Logs out current logged in user session
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof UserApi
-     */
-    public logoutUser(options?: any) {
-        return UserApiFp(this.configuration).logoutUser(options)(this.fetch, this.basePath);
-    }
-
-    /**
-     * This can only be done by the logged in user.
-     * @summary Updated user
-     * @param {string} username name that need to be deleted
-     * @param {User} user Updated user object
-     * @param {*} [options] Override http request option.
-     * @throws {RequiredError}
-     * @memberof UserApi
-     */
-    public updateUser(username: string, user: User, options?: any) {
-        return UserApiFp(this.configuration).updateUser(username, user, options)(this.fetch, this.basePath);
-    }
-
-}
-
diff --git a/samples/client/petstore/typescript-fetch/builds/default/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/default/apis/PetApi.ts
index 1fcb27ef1c5eaa046a19b9069cdacf4fd9728827..e43896cc29293bb05c921674b284c194a96d88c0 100644
--- a/samples/client/petstore/typescript-fetch/builds/default/apis/PetApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/default/apis/PetApi.ts
@@ -98,9 +98,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Add a new pet to the store
-     */
+   /**
+    * Add a new pet to the store
+    */
     async addPet(requestParameters: AddPetRequest): Promise<void> {
         await this.addPetRaw(requestParameters);
     }
@@ -140,9 +140,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Deletes a pet
-     */
+   /**
+    * Deletes a pet
+    */
     async deletePet(requestParameters: DeletePetRequest): Promise<void> {
         await this.deletePetRaw(requestParameters);
     }
@@ -183,10 +183,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
     }
 
-    /**
-     * Multiple status values can be provided with comma separated strings
-     * Finds Pets by status
-     */
+   /**
+    * Multiple status values can be provided with comma separated strings
+    * Finds Pets by status
+    */
     async findPetsByStatus(requestParameters: FindPetsByStatusRequest): Promise<Array<Pet>> {
         const response = await this.findPetsByStatusRaw(requestParameters);
         return await response.value();
@@ -228,10 +228,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
     }
 
-    /**
-     * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
-     * Finds Pets by tags
-     */
+   /**
+    * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
+    * Finds Pets by tags
+    */
     async findPetsByTags(requestParameters: FindPetsByTagsRequest): Promise<Array<Pet>> {
         const response = await this.findPetsByTagsRaw(requestParameters);
         return await response.value();
@@ -264,10 +264,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => PetFromJSON(jsonValue));
     }
 
-    /**
-     * Returns a single pet
-     * Find pet by ID
-     */
+   /**
+    * Returns a single pet
+    * Find pet by ID
+    */
     async getPetById(requestParameters: GetPetByIdRequest): Promise<Pet> {
         const response = await this.getPetByIdRaw(requestParameters);
         return await response.value();
@@ -307,9 +307,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Update an existing pet
-     */
+   /**
+    * Update an existing pet
+    */
     async updatePet(requestParameters: UpdatePetRequest): Promise<void> {
         await this.updatePetRaw(requestParameters);
     }
@@ -355,9 +355,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Updates a pet in the store with form data
-     */
+   /**
+    * Updates a pet in the store with form data
+    */
     async updatePetWithForm(requestParameters: UpdatePetWithFormRequest): Promise<void> {
         await this.updatePetWithFormRaw(requestParameters);
     }
@@ -403,9 +403,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue));
     }
 
-    /**
-     * uploads an image
-     */
+   /**
+    * uploads an image
+    */
     async uploadFile(requestParameters: UploadFileRequest): Promise<ModelApiResponse> {
         const response = await this.uploadFileRaw(requestParameters);
         return await response.value();
diff --git a/samples/client/petstore/typescript-fetch/builds/default/apis/StoreApi.ts b/samples/client/petstore/typescript-fetch/builds/default/apis/StoreApi.ts
index 4b645dea987e2d6786dcf49bf8419c87302fae7b..916660981657f197c5a6112d7e14213ec3bdd6d6 100644
--- a/samples/client/petstore/typescript-fetch/builds/default/apis/StoreApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/default/apis/StoreApi.ts
@@ -59,10 +59,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
-     * Delete purchase order by ID
-     */
+   /**
+    * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
+    * Delete purchase order by ID
+    */
     async deleteOrder(requestParameters: DeleteOrderRequest): Promise<void> {
         await this.deleteOrderRaw(requestParameters);
     }
@@ -90,10 +90,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse<any>(response);
     }
 
-    /**
-     * Returns a map of status codes to quantities
-     * Returns pet inventories by status
-     */
+   /**
+    * Returns a map of status codes to quantities
+    * Returns pet inventories by status
+    */
     async getInventory(): Promise<{ [key: string]: number; }> {
         const response = await this.getInventoryRaw();
         return await response.value();
@@ -122,10 +122,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
     }
 
-    /**
-     * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
-     * Find purchase order by ID
-     */
+   /**
+    * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+    * Find purchase order by ID
+    */
     async getOrderById(requestParameters: GetOrderByIdRequest): Promise<Order> {
         const response = await this.getOrderByIdRaw(requestParameters);
         return await response.value();
@@ -156,9 +156,9 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
     }
 
-    /**
-     * Place an order for a pet
-     */
+   /**
+    * Place an order for a pet
+    */
     async placeOrder(requestParameters: PlaceOrderRequest): Promise<Order> {
         const response = await this.placeOrderRaw(requestParameters);
         return await response.value();
diff --git a/samples/client/petstore/typescript-fetch/builds/default/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/default/apis/UserApi.ts
index 4126b817ee9450d5b97d4feae623986592d4448b..1696b600f57fbaeb06f0e1eac9e7bde15b99da12 100644
--- a/samples/client/petstore/typescript-fetch/builds/default/apis/UserApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/default/apis/UserApi.ts
@@ -80,10 +80,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Create user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Create user
+    */
     async createUser(requestParameters: CreateUserRequest): Promise<void> {
         await this.createUserRaw(requestParameters);
     }
@@ -113,9 +113,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Creates list of users with given input array
-     */
+   /**
+    * Creates list of users with given input array
+    */
     async createUsersWithArrayInput(requestParameters: CreateUsersWithArrayInputRequest): Promise<void> {
         await this.createUsersWithArrayInputRaw(requestParameters);
     }
@@ -145,9 +145,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Creates list of users with given input array
-     */
+   /**
+    * Creates list of users with given input array
+    */
     async createUsersWithListInput(requestParameters: CreateUsersWithListInputRequest): Promise<void> {
         await this.createUsersWithListInputRaw(requestParameters);
     }
@@ -175,10 +175,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Delete user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Delete user
+    */
     async deleteUser(requestParameters: DeleteUserRequest): Promise<void> {
         await this.deleteUserRaw(requestParameters);
     }
@@ -205,9 +205,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => UserFromJSON(jsonValue));
     }
 
-    /**
-     * Get user by user name
-     */
+   /**
+    * Get user by user name
+    */
     async getUserByName(requestParameters: GetUserByNameRequest): Promise<User> {
         const response = await this.getUserByNameRaw(requestParameters);
         return await response.value();
@@ -247,9 +247,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.TextApiResponse(response);
     }
 
-    /**
-     * Logs user into the system
-     */
+   /**
+    * Logs user into the system
+    */
     async loginUser(requestParameters: LoginUserRequest): Promise<string> {
         const response = await this.loginUserRaw(requestParameters);
         return await response.value();
@@ -273,9 +273,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Logs out current logged in user session
-     */
+   /**
+    * Logs out current logged in user session
+    */
     async logoutUser(): Promise<void> {
         await this.logoutUserRaw();
     }
@@ -310,10 +310,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Updated user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Updated user
+    */
     async updateUser(requestParameters: UpdateUserRequest): Promise<void> {
         await this.updateUserRaw(requestParameters);
     }
diff --git a/samples/client/petstore/typescript-fetch/builds/default/models/ApiResponse.ts b/samples/client/petstore/typescript-fetch/builds/default/models/ApiResponse.ts
deleted file mode 100644
index 2275473e610bbbbbd596df752cb87e86377f961d..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/default/models/ApiResponse.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * OpenAPI spec version: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-import { exists } from '../runtime';
-/**
- * Describes the result of uploading an image resource
- * @export
- * @interface ApiResponse
- */
-export interface ApiResponse {
-    /**
-     * 
-     * @type {number}
-     * @memberof ApiResponse
-     */
-    code?: number;
-    /**
-     * 
-     * @type {string}
-     * @memberof ApiResponse
-     */
-    type?: string;
-    /**
-     * 
-     * @type {string}
-     * @memberof ApiResponse
-     */
-    message?: string;
-}
-
-export function ApiResponseFromJSON(json: any): ApiResponse {
-    return {
-        'code': !exists(json, 'code') ? undefined : json['code'],
-        'type': !exists(json, 'type') ? undefined : json['type'],
-        'message': !exists(json, 'message') ? undefined : json['message'],
-    };
-}
-
-export function ApiResponseToJSON(value?: ApiResponse): any {
-    if (value === undefined) {
-        return undefined;
-    }
-    return {
-        'code': value.code,
-        'type': value.type,
-        'message': value.message,
-    };
-}
-
-
diff --git a/samples/client/petstore/typescript-fetch/builds/default/models/InlineObject.ts b/samples/client/petstore/typescript-fetch/builds/default/models/InlineObject.ts
deleted file mode 100644
index 2998b1463ce5d3448c920d23ccda15c3776eea31..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/default/models/InlineObject.ts
+++ /dev/null
@@ -1,52 +0,0 @@
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * The version of the OpenAPI document: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-import { exists, mapValues } from '../runtime';
-/**
- * 
- * @export
- * @interface InlineObject
- */
-export interface InlineObject {
-    /**
-     * Updated name of the pet
-     * @type {string}
-     * @memberof InlineObject
-     */
-    name?: string;
-    /**
-     * Updated status of the pet
-     * @type {string}
-     * @memberof InlineObject
-     */
-    status?: string;
-}
-
-export function InlineObjectFromJSON(json: any): InlineObject {
-    return {
-        'name': !exists(json, 'name') ? undefined : json['name'],
-        'status': !exists(json, 'status') ? undefined : json['status'],
-    };
-}
-
-export function InlineObjectToJSON(value?: InlineObject): any {
-    if (value === undefined) {
-        return undefined;
-    }
-    return {
-        'name': value.name,
-        'status': value.status,
-    };
-}
-
-
diff --git a/samples/client/petstore/typescript-fetch/builds/default/models/InlineObject1.ts b/samples/client/petstore/typescript-fetch/builds/default/models/InlineObject1.ts
deleted file mode 100644
index 4cd90b1379596a0d741db4757b997a29292f9008..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/default/models/InlineObject1.ts
+++ /dev/null
@@ -1,52 +0,0 @@
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * The version of the OpenAPI document: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-import { exists, mapValues } from '../runtime';
-/**
- * 
- * @export
- * @interface InlineObject1
- */
-export interface InlineObject1 {
-    /**
-     * Additional data to pass to server
-     * @type {string}
-     * @memberof InlineObject1
-     */
-    additionalMetadata?: string;
-    /**
-     * file to upload
-     * @type {Blob}
-     * @memberof InlineObject1
-     */
-    file?: Blob;
-}
-
-export function InlineObject1FromJSON(json: any): InlineObject1 {
-    return {
-        'additionalMetadata': !exists(json, 'additionalMetadata') ? undefined : json['additionalMetadata'],
-        'file': !exists(json, 'file') ? undefined : json['file'],
-    };
-}
-
-export function InlineObject1ToJSON(value?: InlineObject1): any {
-    if (value === undefined) {
-        return undefined;
-    }
-    return {
-        'additionalMetadata': value.additionalMetadata,
-        'file': value.file,
-    };
-}
-
-
diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/es6-target/apis/PetApi.ts
index 1fcb27ef1c5eaa046a19b9069cdacf4fd9728827..e43896cc29293bb05c921674b284c194a96d88c0 100644
--- a/samples/client/petstore/typescript-fetch/builds/es6-target/apis/PetApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/es6-target/apis/PetApi.ts
@@ -98,9 +98,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Add a new pet to the store
-     */
+   /**
+    * Add a new pet to the store
+    */
     async addPet(requestParameters: AddPetRequest): Promise<void> {
         await this.addPetRaw(requestParameters);
     }
@@ -140,9 +140,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Deletes a pet
-     */
+   /**
+    * Deletes a pet
+    */
     async deletePet(requestParameters: DeletePetRequest): Promise<void> {
         await this.deletePetRaw(requestParameters);
     }
@@ -183,10 +183,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
     }
 
-    /**
-     * Multiple status values can be provided with comma separated strings
-     * Finds Pets by status
-     */
+   /**
+    * Multiple status values can be provided with comma separated strings
+    * Finds Pets by status
+    */
     async findPetsByStatus(requestParameters: FindPetsByStatusRequest): Promise<Array<Pet>> {
         const response = await this.findPetsByStatusRaw(requestParameters);
         return await response.value();
@@ -228,10 +228,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
     }
 
-    /**
-     * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
-     * Finds Pets by tags
-     */
+   /**
+    * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
+    * Finds Pets by tags
+    */
     async findPetsByTags(requestParameters: FindPetsByTagsRequest): Promise<Array<Pet>> {
         const response = await this.findPetsByTagsRaw(requestParameters);
         return await response.value();
@@ -264,10 +264,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => PetFromJSON(jsonValue));
     }
 
-    /**
-     * Returns a single pet
-     * Find pet by ID
-     */
+   /**
+    * Returns a single pet
+    * Find pet by ID
+    */
     async getPetById(requestParameters: GetPetByIdRequest): Promise<Pet> {
         const response = await this.getPetByIdRaw(requestParameters);
         return await response.value();
@@ -307,9 +307,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Update an existing pet
-     */
+   /**
+    * Update an existing pet
+    */
     async updatePet(requestParameters: UpdatePetRequest): Promise<void> {
         await this.updatePetRaw(requestParameters);
     }
@@ -355,9 +355,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Updates a pet in the store with form data
-     */
+   /**
+    * Updates a pet in the store with form data
+    */
     async updatePetWithForm(requestParameters: UpdatePetWithFormRequest): Promise<void> {
         await this.updatePetWithFormRaw(requestParameters);
     }
@@ -403,9 +403,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue));
     }
 
-    /**
-     * uploads an image
-     */
+   /**
+    * uploads an image
+    */
     async uploadFile(requestParameters: UploadFileRequest): Promise<ModelApiResponse> {
         const response = await this.uploadFileRaw(requestParameters);
         return await response.value();
diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/apis/StoreApi.ts b/samples/client/petstore/typescript-fetch/builds/es6-target/apis/StoreApi.ts
index 4b645dea987e2d6786dcf49bf8419c87302fae7b..916660981657f197c5a6112d7e14213ec3bdd6d6 100644
--- a/samples/client/petstore/typescript-fetch/builds/es6-target/apis/StoreApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/es6-target/apis/StoreApi.ts
@@ -59,10 +59,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
-     * Delete purchase order by ID
-     */
+   /**
+    * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
+    * Delete purchase order by ID
+    */
     async deleteOrder(requestParameters: DeleteOrderRequest): Promise<void> {
         await this.deleteOrderRaw(requestParameters);
     }
@@ -90,10 +90,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse<any>(response);
     }
 
-    /**
-     * Returns a map of status codes to quantities
-     * Returns pet inventories by status
-     */
+   /**
+    * Returns a map of status codes to quantities
+    * Returns pet inventories by status
+    */
     async getInventory(): Promise<{ [key: string]: number; }> {
         const response = await this.getInventoryRaw();
         return await response.value();
@@ -122,10 +122,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
     }
 
-    /**
-     * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
-     * Find purchase order by ID
-     */
+   /**
+    * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+    * Find purchase order by ID
+    */
     async getOrderById(requestParameters: GetOrderByIdRequest): Promise<Order> {
         const response = await this.getOrderByIdRaw(requestParameters);
         return await response.value();
@@ -156,9 +156,9 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
     }
 
-    /**
-     * Place an order for a pet
-     */
+   /**
+    * Place an order for a pet
+    */
     async placeOrder(requestParameters: PlaceOrderRequest): Promise<Order> {
         const response = await this.placeOrderRaw(requestParameters);
         return await response.value();
diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/es6-target/apis/UserApi.ts
index 4126b817ee9450d5b97d4feae623986592d4448b..1696b600f57fbaeb06f0e1eac9e7bde15b99da12 100644
--- a/samples/client/petstore/typescript-fetch/builds/es6-target/apis/UserApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/es6-target/apis/UserApi.ts
@@ -80,10 +80,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Create user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Create user
+    */
     async createUser(requestParameters: CreateUserRequest): Promise<void> {
         await this.createUserRaw(requestParameters);
     }
@@ -113,9 +113,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Creates list of users with given input array
-     */
+   /**
+    * Creates list of users with given input array
+    */
     async createUsersWithArrayInput(requestParameters: CreateUsersWithArrayInputRequest): Promise<void> {
         await this.createUsersWithArrayInputRaw(requestParameters);
     }
@@ -145,9 +145,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Creates list of users with given input array
-     */
+   /**
+    * Creates list of users with given input array
+    */
     async createUsersWithListInput(requestParameters: CreateUsersWithListInputRequest): Promise<void> {
         await this.createUsersWithListInputRaw(requestParameters);
     }
@@ -175,10 +175,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Delete user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Delete user
+    */
     async deleteUser(requestParameters: DeleteUserRequest): Promise<void> {
         await this.deleteUserRaw(requestParameters);
     }
@@ -205,9 +205,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => UserFromJSON(jsonValue));
     }
 
-    /**
-     * Get user by user name
-     */
+   /**
+    * Get user by user name
+    */
     async getUserByName(requestParameters: GetUserByNameRequest): Promise<User> {
         const response = await this.getUserByNameRaw(requestParameters);
         return await response.value();
@@ -247,9 +247,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.TextApiResponse(response);
     }
 
-    /**
-     * Logs user into the system
-     */
+   /**
+    * Logs user into the system
+    */
     async loginUser(requestParameters: LoginUserRequest): Promise<string> {
         const response = await this.loginUserRaw(requestParameters);
         return await response.value();
@@ -273,9 +273,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Logs out current logged in user session
-     */
+   /**
+    * Logs out current logged in user session
+    */
     async logoutUser(): Promise<void> {
         await this.logoutUserRaw();
     }
@@ -310,10 +310,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Updated user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Updated user
+    */
     async updateUser(requestParameters: UpdateUserRequest): Promise<void> {
         await this.updateUserRaw(requestParameters);
     }
diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/models/InlineObject1.ts b/samples/client/petstore/typescript-fetch/builds/es6-target/models/InlineObject1.ts
deleted file mode 100644
index 4cd90b1379596a0d741db4757b997a29292f9008..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/es6-target/models/InlineObject1.ts
+++ /dev/null
@@ -1,52 +0,0 @@
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * The version of the OpenAPI document: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-import { exists, mapValues } from '../runtime';
-/**
- * 
- * @export
- * @interface InlineObject1
- */
-export interface InlineObject1 {
-    /**
-     * Additional data to pass to server
-     * @type {string}
-     * @memberof InlineObject1
-     */
-    additionalMetadata?: string;
-    /**
-     * file to upload
-     * @type {Blob}
-     * @memberof InlineObject1
-     */
-    file?: Blob;
-}
-
-export function InlineObject1FromJSON(json: any): InlineObject1 {
-    return {
-        'additionalMetadata': !exists(json, 'additionalMetadata') ? undefined : json['additionalMetadata'],
-        'file': !exists(json, 'file') ? undefined : json['file'],
-    };
-}
-
-export function InlineObject1ToJSON(value?: InlineObject1): any {
-    if (value === undefined) {
-        return undefined;
-    }
-    return {
-        'additionalMetadata': value.additionalMetadata,
-        'file': value.file,
-    };
-}
-
-
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/.gitignore b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..149b57654723c14590f35c6c0db8460f19173078
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/.gitignore
@@ -0,0 +1,4 @@
+wwwroot/*.js
+node_modules
+typings
+dist
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/.openapi-generator-ignore b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/.openapi-generator-ignore
new file mode 100644
index 0000000000000000000000000000000000000000..7484ee590a3894506cf063799b885428f95a71be
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/.openapi-generator-ignore
@@ -0,0 +1,23 @@
+# OpenAPI Generator Ignore
+# Generated by openapi-generator https://github.com/openapitools/openapi-generator
+
+# Use this file to prevent files from being overwritten by the generator.
+# The patterns follow closely to .gitignore or .dockerignore.
+
+# As an example, the C# client generator defines ApiClient.cs.
+# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line:
+#ApiClient.cs
+
+# You can match any string of characters against a directory, file or extension with a single asterisk (*):
+#foo/*/qux
+# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux
+
+# You can recursively match patterns against a directory, file or extension with a double asterisk (**):
+#foo/**/qux
+# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux
+
+# You can also negate patterns with an exclamation (!).
+# For example, you can ignore all files in a docs folder with the file extension .md:
+#docs/*.md
+# Then explicitly reverse the ignore rule for a single file:
+#!docs/README.md
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/.openapi-generator/VERSION b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/.openapi-generator/VERSION
new file mode 100644
index 0000000000000000000000000000000000000000..83a328a9227eeb701e955686cfc946eff558dc31
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/.openapi-generator/VERSION
@@ -0,0 +1 @@
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/PetApi.ts
new file mode 100644
index 0000000000000000000000000000000000000000..e3501ab3f26a1eea9d5268fdeddff77df85c64ea
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/PetApi.ts
@@ -0,0 +1,424 @@
+// tslint:disable
+/**
+ * OpenAPI Petstore
+ * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * 
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+import * as runtime from '../runtime';
+import {
+    ModelApiResponse,
+    ModelApiResponseFromJSON,
+    ModelApiResponseToJSON,
+    Pet,
+    PetFromJSON,
+    PetToJSON,
+} from '../models';
+
+export interface AddPetRequest {
+    body: Pet;
+}
+
+export interface DeletePetRequest {
+    petId: number;
+    apiKey?: string;
+}
+
+export interface FindPetsByStatusRequest {
+    status: Array<FindPetsByStatusStatusEnum>;
+}
+
+export interface FindPetsByTagsRequest {
+    tags: Array<string>;
+}
+
+export interface GetPetByIdRequest {
+    petId: number;
+}
+
+export interface UpdatePetRequest {
+    body: Pet;
+}
+
+export interface UpdatePetWithFormRequest {
+    petId: number;
+    name?: string;
+    status?: string;
+}
+
+export interface UploadFileRequest {
+    petId: number;
+    additionalMetadata?: string;
+    file?: Blob;
+}
+
+/**
+ * no description
+ */
+export class PetApi extends runtime.BaseAPI {
+
+    /**
+     * Add a new pet to the store
+     */
+    async addPetRaw(requestParameters: AddPetRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.body === null || requestParameters.body === undefined) {
+            throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling addPet.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        headerParameters['Content-Type'] = 'application/json';
+
+        if (this.configuration && this.configuration.accessToken) {
+            // oauth required
+            if (typeof this.configuration.accessToken === 'function') {
+                headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]);
+            } else {
+                headerParameters["Authorization"] = this.configuration.accessToken;
+            }
+        }
+
+        const response = await this.request({
+            path: `/pet`,
+            method: 'POST',
+            headers: headerParameters,
+            query: queryParameters,
+            body: PetToJSON(requestParameters.body),
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * Add a new pet to the store
+    */
+    async addPet(body: Pet): Promise<void> {
+        await this.addPetRaw({ body: body });
+    }
+
+    /**
+     * Deletes a pet
+     */
+    async deletePetRaw(requestParameters: DeletePetRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.petId === null || requestParameters.petId === undefined) {
+            throw new runtime.RequiredError('petId','Required parameter requestParameters.petId was null or undefined when calling deletePet.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        if (requestParameters.apiKey !== undefined && requestParameters.apiKey !== null) {
+            headerParameters['api_key'] = String(requestParameters.apiKey);
+        }
+
+        if (this.configuration && this.configuration.accessToken) {
+            // oauth required
+            if (typeof this.configuration.accessToken === 'function') {
+                headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]);
+            } else {
+                headerParameters["Authorization"] = this.configuration.accessToken;
+            }
+        }
+
+        const response = await this.request({
+            path: `/pet/{petId}`.replace(`{${"petId"}}`, encodeURIComponent(String(requestParameters.petId))),
+            method: 'DELETE',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * Deletes a pet
+    */
+    async deletePet(petId: number, apiKey?: string): Promise<void> {
+        await this.deletePetRaw({ petId: petId, apiKey: apiKey });
+    }
+
+    /**
+     * Multiple status values can be provided with comma separated strings
+     * Finds Pets by status
+     */
+    async findPetsByStatusRaw(requestParameters: FindPetsByStatusRequest): Promise<runtime.ApiResponse<Array<Pet>>> {
+        if (requestParameters.status === null || requestParameters.status === undefined) {
+            throw new runtime.RequiredError('status','Required parameter requestParameters.status was null or undefined when calling findPetsByStatus.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        if (requestParameters.status) {
+            queryParameters['status'] = requestParameters.status.join(runtime.COLLECTION_FORMATS["csv"]);
+        }
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        if (this.configuration && this.configuration.accessToken) {
+            // oauth required
+            if (typeof this.configuration.accessToken === 'function') {
+                headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]);
+            } else {
+                headerParameters["Authorization"] = this.configuration.accessToken;
+            }
+        }
+
+        const response = await this.request({
+            path: `/pet/findByStatus`,
+            method: 'GET',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
+    }
+
+   /**
+    * Multiple status values can be provided with comma separated strings
+    * Finds Pets by status
+    */
+    async findPetsByStatus(status: Array<FindPetsByStatusStatusEnum>): Promise<Array<Pet>> {
+        const response = await this.findPetsByStatusRaw({ status: status });
+        return await response.value();
+    }
+
+    /**
+     * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
+     * Finds Pets by tags
+     */
+    async findPetsByTagsRaw(requestParameters: FindPetsByTagsRequest): Promise<runtime.ApiResponse<Array<Pet>>> {
+        if (requestParameters.tags === null || requestParameters.tags === undefined) {
+            throw new runtime.RequiredError('tags','Required parameter requestParameters.tags was null or undefined when calling findPetsByTags.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        if (requestParameters.tags) {
+            queryParameters['tags'] = requestParameters.tags.join(runtime.COLLECTION_FORMATS["csv"]);
+        }
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        if (this.configuration && this.configuration.accessToken) {
+            // oauth required
+            if (typeof this.configuration.accessToken === 'function') {
+                headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]);
+            } else {
+                headerParameters["Authorization"] = this.configuration.accessToken;
+            }
+        }
+
+        const response = await this.request({
+            path: `/pet/findByTags`,
+            method: 'GET',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
+    }
+
+   /**
+    * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
+    * Finds Pets by tags
+    */
+    async findPetsByTags(tags: Array<string>): Promise<Array<Pet>> {
+        const response = await this.findPetsByTagsRaw({ tags: tags });
+        return await response.value();
+    }
+
+    /**
+     * Returns a single pet
+     * Find pet by ID
+     */
+    async getPetByIdRaw(requestParameters: GetPetByIdRequest): Promise<runtime.ApiResponse<Pet>> {
+        if (requestParameters.petId === null || requestParameters.petId === undefined) {
+            throw new runtime.RequiredError('petId','Required parameter requestParameters.petId was null or undefined when calling getPetById.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        if (this.configuration && this.configuration.apiKey) {
+            headerParameters["api_key"] = this.configuration.apiKey("api_key"); // api_key authentication
+        }
+
+        const response = await this.request({
+            path: `/pet/{petId}`.replace(`{${"petId"}}`, encodeURIComponent(String(requestParameters.petId))),
+            method: 'GET',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.JSONApiResponse(response, (jsonValue) => PetFromJSON(jsonValue));
+    }
+
+   /**
+    * Returns a single pet
+    * Find pet by ID
+    */
+    async getPetById(petId: number): Promise<Pet> {
+        const response = await this.getPetByIdRaw({ petId: petId });
+        return await response.value();
+    }
+
+    /**
+     * Update an existing pet
+     */
+    async updatePetRaw(requestParameters: UpdatePetRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.body === null || requestParameters.body === undefined) {
+            throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling updatePet.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        headerParameters['Content-Type'] = 'application/json';
+
+        if (this.configuration && this.configuration.accessToken) {
+            // oauth required
+            if (typeof this.configuration.accessToken === 'function') {
+                headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]);
+            } else {
+                headerParameters["Authorization"] = this.configuration.accessToken;
+            }
+        }
+
+        const response = await this.request({
+            path: `/pet`,
+            method: 'PUT',
+            headers: headerParameters,
+            query: queryParameters,
+            body: PetToJSON(requestParameters.body),
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * Update an existing pet
+    */
+    async updatePet(body: Pet): Promise<void> {
+        await this.updatePetRaw({ body: body });
+    }
+
+    /**
+     * Updates a pet in the store with form data
+     */
+    async updatePetWithFormRaw(requestParameters: UpdatePetWithFormRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.petId === null || requestParameters.petId === undefined) {
+            throw new runtime.RequiredError('petId','Required parameter requestParameters.petId was null or undefined when calling updatePetWithForm.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        if (this.configuration && this.configuration.accessToken) {
+            // oauth required
+            if (typeof this.configuration.accessToken === 'function') {
+                headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]);
+            } else {
+                headerParameters["Authorization"] = this.configuration.accessToken;
+            }
+        }
+
+        const formData = new FormData();
+        if (requestParameters.name !== undefined) {
+            formData.append('name', requestParameters.name as any);
+        }
+
+        if (requestParameters.status !== undefined) {
+            formData.append('status', requestParameters.status as any);
+        }
+
+        const response = await this.request({
+            path: `/pet/{petId}`.replace(`{${"petId"}}`, encodeURIComponent(String(requestParameters.petId))),
+            method: 'POST',
+            headers: headerParameters,
+            query: queryParameters,
+            body: formData,
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * Updates a pet in the store with form data
+    */
+    async updatePetWithForm(petId: number, name?: string, status?: string): Promise<void> {
+        await this.updatePetWithFormRaw({ petId: petId, name: name, status: status });
+    }
+
+    /**
+     * uploads an image
+     */
+    async uploadFileRaw(requestParameters: UploadFileRequest): Promise<runtime.ApiResponse<ModelApiResponse>> {
+        if (requestParameters.petId === null || requestParameters.petId === undefined) {
+            throw new runtime.RequiredError('petId','Required parameter requestParameters.petId was null or undefined when calling uploadFile.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        if (this.configuration && this.configuration.accessToken) {
+            // oauth required
+            if (typeof this.configuration.accessToken === 'function') {
+                headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]);
+            } else {
+                headerParameters["Authorization"] = this.configuration.accessToken;
+            }
+        }
+
+        const formData = new FormData();
+        if (requestParameters.additionalMetadata !== undefined) {
+            formData.append('additionalMetadata', requestParameters.additionalMetadata as any);
+        }
+
+        if (requestParameters.file !== undefined) {
+            formData.append('file', requestParameters.file as any);
+        }
+
+        const response = await this.request({
+            path: `/pet/{petId}/uploadImage`.replace(`{${"petId"}}`, encodeURIComponent(String(requestParameters.petId))),
+            method: 'POST',
+            headers: headerParameters,
+            query: queryParameters,
+            body: formData,
+        });
+
+        return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue));
+    }
+
+   /**
+    * uploads an image
+    */
+    async uploadFile(petId: number, additionalMetadata?: string, file?: Blob): Promise<ModelApiResponse> {
+        const response = await this.uploadFileRaw({ petId: petId, additionalMetadata: additionalMetadata, file: file });
+        return await response.value();
+    }
+
+}
+
+/**
+    * @export
+    * @enum {string}
+    */
+export enum FindPetsByStatusStatusEnum {
+    Available = 'available',
+    Pending = 'pending',
+    Sold = 'sold'
+}
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/StoreApi.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/StoreApi.ts
new file mode 100644
index 0000000000000000000000000000000000000000..5b3424aafba414e5da7b3adbaae926ab1ddb54da
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/StoreApi.ts
@@ -0,0 +1,167 @@
+// tslint:disable
+/**
+ * OpenAPI Petstore
+ * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * 
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+import * as runtime from '../runtime';
+import {
+    Order,
+    OrderFromJSON,
+    OrderToJSON,
+} from '../models';
+
+export interface DeleteOrderRequest {
+    orderId: string;
+}
+
+export interface GetOrderByIdRequest {
+    orderId: number;
+}
+
+export interface PlaceOrderRequest {
+    body: Order;
+}
+
+/**
+ * no description
+ */
+export class StoreApi extends runtime.BaseAPI {
+
+    /**
+     * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
+     * Delete purchase order by ID
+     */
+    async deleteOrderRaw(requestParameters: DeleteOrderRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.orderId === null || requestParameters.orderId === undefined) {
+            throw new runtime.RequiredError('orderId','Required parameter requestParameters.orderId was null or undefined when calling deleteOrder.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        const response = await this.request({
+            path: `/store/order/{orderId}`.replace(`{${"orderId"}}`, encodeURIComponent(String(requestParameters.orderId))),
+            method: 'DELETE',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
+    * Delete purchase order by ID
+    */
+    async deleteOrder(orderId: string): Promise<void> {
+        await this.deleteOrderRaw({ orderId: orderId });
+    }
+
+    /**
+     * Returns a map of status codes to quantities
+     * Returns pet inventories by status
+     */
+    async getInventoryRaw(): Promise<runtime.ApiResponse<{ [key: string]: number; }>> {
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        if (this.configuration && this.configuration.apiKey) {
+            headerParameters["api_key"] = this.configuration.apiKey("api_key"); // api_key authentication
+        }
+
+        const response = await this.request({
+            path: `/store/inventory`,
+            method: 'GET',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.JSONApiResponse<any>(response);
+    }
+
+   /**
+    * Returns a map of status codes to quantities
+    * Returns pet inventories by status
+    */
+    async getInventory(): Promise<{ [key: string]: number; }> {
+        const response = await this.getInventoryRaw();
+        return await response.value();
+    }
+
+    /**
+     * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+     * Find purchase order by ID
+     */
+    async getOrderByIdRaw(requestParameters: GetOrderByIdRequest): Promise<runtime.ApiResponse<Order>> {
+        if (requestParameters.orderId === null || requestParameters.orderId === undefined) {
+            throw new runtime.RequiredError('orderId','Required parameter requestParameters.orderId was null or undefined when calling getOrderById.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        const response = await this.request({
+            path: `/store/order/{orderId}`.replace(`{${"orderId"}}`, encodeURIComponent(String(requestParameters.orderId))),
+            method: 'GET',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
+    }
+
+   /**
+    * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+    * Find purchase order by ID
+    */
+    async getOrderById(orderId: number): Promise<Order> {
+        const response = await this.getOrderByIdRaw({ orderId: orderId });
+        return await response.value();
+    }
+
+    /**
+     * Place an order for a pet
+     */
+    async placeOrderRaw(requestParameters: PlaceOrderRequest): Promise<runtime.ApiResponse<Order>> {
+        if (requestParameters.body === null || requestParameters.body === undefined) {
+            throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling placeOrder.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        headerParameters['Content-Type'] = 'application/json';
+
+        const response = await this.request({
+            path: `/store/order`,
+            method: 'POST',
+            headers: headerParameters,
+            query: queryParameters,
+            body: OrderToJSON(requestParameters.body),
+        });
+
+        return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
+    }
+
+   /**
+    * Place an order for a pet
+    */
+    async placeOrder(body: Order): Promise<Order> {
+        const response = await this.placeOrderRaw({ body: body });
+        return await response.value();
+    }
+
+}
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/UserApi.ts
new file mode 100644
index 0000000000000000000000000000000000000000..443e52fe2c2f9c4027e67bd3cfd4b86a15dfaba9
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/UserApi.ts
@@ -0,0 +1,321 @@
+// tslint:disable
+/**
+ * OpenAPI Petstore
+ * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * 
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+import * as runtime from '../runtime';
+import {
+    User,
+    UserFromJSON,
+    UserToJSON,
+} from '../models';
+
+export interface CreateUserRequest {
+    body: User;
+}
+
+export interface CreateUsersWithArrayInputRequest {
+    body: Array<User>;
+}
+
+export interface CreateUsersWithListInputRequest {
+    body: Array<User>;
+}
+
+export interface DeleteUserRequest {
+    username: string;
+}
+
+export interface GetUserByNameRequest {
+    username: string;
+}
+
+export interface LoginUserRequest {
+    username: string;
+    password: string;
+}
+
+export interface UpdateUserRequest {
+    username: string;
+    body: User;
+}
+
+/**
+ * no description
+ */
+export class UserApi extends runtime.BaseAPI {
+
+    /**
+     * This can only be done by the logged in user.
+     * Create user
+     */
+    async createUserRaw(requestParameters: CreateUserRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.body === null || requestParameters.body === undefined) {
+            throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling createUser.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        headerParameters['Content-Type'] = 'application/json';
+
+        const response = await this.request({
+            path: `/user`,
+            method: 'POST',
+            headers: headerParameters,
+            query: queryParameters,
+            body: UserToJSON(requestParameters.body),
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * This can only be done by the logged in user.
+    * Create user
+    */
+    async createUser(body: User): Promise<void> {
+        await this.createUserRaw({ body: body });
+    }
+
+    /**
+     * Creates list of users with given input array
+     */
+    async createUsersWithArrayInputRaw(requestParameters: CreateUsersWithArrayInputRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.body === null || requestParameters.body === undefined) {
+            throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling createUsersWithArrayInput.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        headerParameters['Content-Type'] = 'application/json';
+
+        const response = await this.request({
+            path: `/user/createWithArray`,
+            method: 'POST',
+            headers: headerParameters,
+            query: queryParameters,
+            body: requestParameters.body.map(UserToJSON),
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * Creates list of users with given input array
+    */
+    async createUsersWithArrayInput(body: Array<User>): Promise<void> {
+        await this.createUsersWithArrayInputRaw({ body: body });
+    }
+
+    /**
+     * Creates list of users with given input array
+     */
+    async createUsersWithListInputRaw(requestParameters: CreateUsersWithListInputRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.body === null || requestParameters.body === undefined) {
+            throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling createUsersWithListInput.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        headerParameters['Content-Type'] = 'application/json';
+
+        const response = await this.request({
+            path: `/user/createWithList`,
+            method: 'POST',
+            headers: headerParameters,
+            query: queryParameters,
+            body: requestParameters.body.map(UserToJSON),
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * Creates list of users with given input array
+    */
+    async createUsersWithListInput(body: Array<User>): Promise<void> {
+        await this.createUsersWithListInputRaw({ body: body });
+    }
+
+    /**
+     * This can only be done by the logged in user.
+     * Delete user
+     */
+    async deleteUserRaw(requestParameters: DeleteUserRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.username === null || requestParameters.username === undefined) {
+            throw new runtime.RequiredError('username','Required parameter requestParameters.username was null or undefined when calling deleteUser.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        const response = await this.request({
+            path: `/user/{username}`.replace(`{${"username"}}`, encodeURIComponent(String(requestParameters.username))),
+            method: 'DELETE',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * This can only be done by the logged in user.
+    * Delete user
+    */
+    async deleteUser(username: string): Promise<void> {
+        await this.deleteUserRaw({ username: username });
+    }
+
+    /**
+     * Get user by user name
+     */
+    async getUserByNameRaw(requestParameters: GetUserByNameRequest): Promise<runtime.ApiResponse<User>> {
+        if (requestParameters.username === null || requestParameters.username === undefined) {
+            throw new runtime.RequiredError('username','Required parameter requestParameters.username was null or undefined when calling getUserByName.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        const response = await this.request({
+            path: `/user/{username}`.replace(`{${"username"}}`, encodeURIComponent(String(requestParameters.username))),
+            method: 'GET',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.JSONApiResponse(response, (jsonValue) => UserFromJSON(jsonValue));
+    }
+
+   /**
+    * Get user by user name
+    */
+    async getUserByName(username: string): Promise<User> {
+        const response = await this.getUserByNameRaw({ username: username });
+        return await response.value();
+    }
+
+    /**
+     * Logs user into the system
+     */
+    async loginUserRaw(requestParameters: LoginUserRequest): Promise<runtime.ApiResponse<string>> {
+        if (requestParameters.username === null || requestParameters.username === undefined) {
+            throw new runtime.RequiredError('username','Required parameter requestParameters.username was null or undefined when calling loginUser.');
+        }
+
+        if (requestParameters.password === null || requestParameters.password === undefined) {
+            throw new runtime.RequiredError('password','Required parameter requestParameters.password was null or undefined when calling loginUser.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        if (requestParameters.username !== undefined) {
+            queryParameters['username'] = requestParameters.username;
+        }
+
+        if (requestParameters.password !== undefined) {
+            queryParameters['password'] = requestParameters.password;
+        }
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        const response = await this.request({
+            path: `/user/login`,
+            method: 'GET',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.TextApiResponse(response);
+    }
+
+   /**
+    * Logs user into the system
+    */
+    async loginUser(username: string, password: string): Promise<string> {
+        const response = await this.loginUserRaw({ username: username, password: password });
+        return await response.value();
+    }
+
+    /**
+     * Logs out current logged in user session
+     */
+    async logoutUserRaw(): Promise<runtime.ApiResponse<void>> {
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        const response = await this.request({
+            path: `/user/logout`,
+            method: 'GET',
+            headers: headerParameters,
+            query: queryParameters,
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * Logs out current logged in user session
+    */
+    async logoutUser(): Promise<void> {
+        await this.logoutUserRaw();
+    }
+
+    /**
+     * This can only be done by the logged in user.
+     * Updated user
+     */
+    async updateUserRaw(requestParameters: UpdateUserRequest): Promise<runtime.ApiResponse<void>> {
+        if (requestParameters.username === null || requestParameters.username === undefined) {
+            throw new runtime.RequiredError('username','Required parameter requestParameters.username was null or undefined when calling updateUser.');
+        }
+
+        if (requestParameters.body === null || requestParameters.body === undefined) {
+            throw new runtime.RequiredError('body','Required parameter requestParameters.body was null or undefined when calling updateUser.');
+        }
+
+        const queryParameters: runtime.HTTPQuery = {};
+
+        const headerParameters: runtime.HTTPHeaders = {};
+
+        headerParameters['Content-Type'] = 'application/json';
+
+        const response = await this.request({
+            path: `/user/{username}`.replace(`{${"username"}}`, encodeURIComponent(String(requestParameters.username))),
+            method: 'PUT',
+            headers: headerParameters,
+            query: queryParameters,
+            body: UserToJSON(requestParameters.body),
+        });
+
+        return new runtime.VoidApiResponse(response);
+    }
+
+   /**
+    * This can only be done by the logged in user.
+    * Updated user
+    */
+    async updateUser(username: string, body: User): Promise<void> {
+        await this.updateUserRaw({ username: username, body: body });
+    }
+
+}
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/index.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/index.ts
new file mode 100644
index 0000000000000000000000000000000000000000..056206bfaca39ef0ebd1114dcf876a7f710cc3af
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/index.ts
@@ -0,0 +1,3 @@
+export * from './PetApi';
+export * from './StoreApi';
+export * from './UserApi';
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/index.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/index.ts
new file mode 100644
index 0000000000000000000000000000000000000000..848ecfa4d100d22f5b444ab2a0e8fc7bdec067b4
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/index.ts
@@ -0,0 +1,3 @@
+export * from './runtime';
+export * from './apis';
+export * from './models';
diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/models/InlineObject.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Category.ts
similarity index 61%
rename from samples/client/petstore/typescript-fetch/builds/es6-target/models/InlineObject.ts
rename to samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Category.ts
index 2998b1463ce5d3448c920d23ccda15c3776eea31..f8809dccbea33fe200771c34aaa1662794b5c3c2 100644
--- a/samples/client/petstore/typescript-fetch/builds/es6-target/models/InlineObject.ts
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Category.ts
@@ -13,39 +13,39 @@
 
 import { exists, mapValues } from '../runtime';
 /**
- * 
+ * A category for a pet
  * @export
- * @interface InlineObject
+ * @interface Category
  */
-export interface InlineObject {
+export interface Category {
     /**
-     * Updated name of the pet
-     * @type {string}
-     * @memberof InlineObject
+     * 
+     * @type {number}
+     * @memberof Category
      */
-    name?: string;
+    id?: number;
     /**
-     * Updated status of the pet
+     * 
      * @type {string}
-     * @memberof InlineObject
+     * @memberof Category
      */
-    status?: string;
+    name?: string;
 }
 
-export function InlineObjectFromJSON(json: any): InlineObject {
+export function CategoryFromJSON(json: any): Category {
     return {
+        'id': !exists(json, 'id') ? undefined : json['id'],
         'name': !exists(json, 'name') ? undefined : json['name'],
-        'status': !exists(json, 'status') ? undefined : json['status'],
     };
 }
 
-export function InlineObjectToJSON(value?: InlineObject): any {
+export function CategoryToJSON(value?: Category): any {
     if (value === undefined) {
         return undefined;
     }
     return {
+        'id': value.id,
         'name': value.name,
-        'status': value.status,
     };
 }
 
diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/models/ApiResponse.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/ModelApiResponse.ts
similarity index 71%
rename from samples/client/petstore/typescript-fetch/builds/es6-target/models/ApiResponse.ts
rename to samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/ModelApiResponse.ts
index 2275473e610bbbbbd596df752cb87e86377f961d..8b8e2c45fecdce6853585a30d732a498df131b8b 100644
--- a/samples/client/petstore/typescript-fetch/builds/es6-target/models/ApiResponse.ts
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/ModelApiResponse.ts
@@ -3,7 +3,7 @@
  * OpenAPI Petstore
  * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
  *
- * OpenAPI spec version: 1.0.0
+ * The version of the OpenAPI document: 1.0.0
  * 
  *
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -11,34 +11,34 @@
  * Do not edit the class manually.
  */
 
-import { exists } from '../runtime';
+import { exists, mapValues } from '../runtime';
 /**
  * Describes the result of uploading an image resource
  * @export
- * @interface ApiResponse
+ * @interface ModelApiResponse
  */
-export interface ApiResponse {
+export interface ModelApiResponse {
     /**
      * 
      * @type {number}
-     * @memberof ApiResponse
+     * @memberof ModelApiResponse
      */
     code?: number;
     /**
      * 
      * @type {string}
-     * @memberof ApiResponse
+     * @memberof ModelApiResponse
      */
     type?: string;
     /**
      * 
      * @type {string}
-     * @memberof ApiResponse
+     * @memberof ModelApiResponse
      */
     message?: string;
 }
 
-export function ApiResponseFromJSON(json: any): ApiResponse {
+export function ModelApiResponseFromJSON(json: any): ModelApiResponse {
     return {
         'code': !exists(json, 'code') ? undefined : json['code'],
         'type': !exists(json, 'type') ? undefined : json['type'],
@@ -46,7 +46,7 @@ export function ApiResponseFromJSON(json: any): ApiResponse {
     };
 }
 
-export function ApiResponseToJSON(value?: ApiResponse): any {
+export function ModelApiResponseToJSON(value?: ModelApiResponse): any {
     if (value === undefined) {
         return undefined;
     }
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Order.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Order.ts
new file mode 100644
index 0000000000000000000000000000000000000000..6ce0496794f6c4b35fad0ac440fed3adb75f5c53
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Order.ts
@@ -0,0 +1,94 @@
+// tslint:disable
+/**
+ * OpenAPI Petstore
+ * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * 
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+import { exists, mapValues } from '../runtime';
+/**
+ * An order for a pets from the pet store
+ * @export
+ * @interface Order
+ */
+export interface Order {
+    /**
+     * 
+     * @type {number}
+     * @memberof Order
+     */
+    id?: number;
+    /**
+     * 
+     * @type {number}
+     * @memberof Order
+     */
+    petId?: number;
+    /**
+     * 
+     * @type {number}
+     * @memberof Order
+     */
+    quantity?: number;
+    /**
+     * 
+     * @type {Date}
+     * @memberof Order
+     */
+    shipDate?: Date;
+    /**
+     * Order Status
+     * @type {string}
+     * @memberof Order
+     */
+    status?: OrderStatusEnum;
+    /**
+     * 
+     * @type {boolean}
+     * @memberof Order
+     */
+    complete?: boolean;
+}
+
+export function OrderFromJSON(json: any): Order {
+    return {
+        'id': !exists(json, 'id') ? undefined : json['id'],
+        'petId': !exists(json, 'petId') ? undefined : json['petId'],
+        'quantity': !exists(json, 'quantity') ? undefined : json['quantity'],
+        'shipDate': !exists(json, 'shipDate') ? undefined : new Date(json['shipDate']),
+        'status': !exists(json, 'status') ? undefined : json['status'],
+        'complete': !exists(json, 'complete') ? undefined : json['complete'],
+    };
+}
+
+export function OrderToJSON(value?: Order): any {
+    if (value === undefined) {
+        return undefined;
+    }
+    return {
+        'id': value.id,
+        'petId': value.petId,
+        'quantity': value.quantity,
+        'shipDate': value.shipDate === undefined ? undefined : value.shipDate.toISOString(),
+        'status': value.status,
+        'complete': value.complete,
+    };
+}
+
+/**
+* @export
+* @enum {string}
+*/
+export enum OrderStatusEnum {
+    Placed = 'placed',
+    Approved = 'approved',
+    Delivered = 'delivered'
+}
+
+
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Pet.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Pet.ts
new file mode 100644
index 0000000000000000000000000000000000000000..770f991b89d90d5b19d6f5062b2332b777e4ef2b
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Pet.ts
@@ -0,0 +1,103 @@
+// tslint:disable
+/**
+ * OpenAPI Petstore
+ * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * 
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+import { exists, mapValues } from '../runtime';
+import {
+    Category,
+    CategoryFromJSON,
+    CategoryToJSON,
+    Tag,
+    TagFromJSON,
+    TagToJSON,
+} from './';
+
+/**
+ * A pet for sale in the pet store
+ * @export
+ * @interface Pet
+ */
+export interface Pet {
+    /**
+     * 
+     * @type {number}
+     * @memberof Pet
+     */
+    id?: number;
+    /**
+     * 
+     * @type {Category}
+     * @memberof Pet
+     */
+    category?: Category;
+    /**
+     * 
+     * @type {string}
+     * @memberof Pet
+     */
+    name: string;
+    /**
+     * 
+     * @type {Array<string>}
+     * @memberof Pet
+     */
+    photoUrls: Array<string>;
+    /**
+     * 
+     * @type {Array<Tag>}
+     * @memberof Pet
+     */
+    tags?: Array<Tag>;
+    /**
+     * pet status in the store
+     * @type {string}
+     * @memberof Pet
+     */
+    status?: PetStatusEnum;
+}
+
+export function PetFromJSON(json: any): Pet {
+    return {
+        'id': !exists(json, 'id') ? undefined : json['id'],
+        'category': !exists(json, 'category') ? undefined : CategoryFromJSON(json['category']),
+        'name': json['name'],
+        'photoUrls': json['photoUrls'],
+        'tags': !exists(json, 'tags') ? undefined : (json['tags'] as Array<any>).map(TagFromJSON),
+        'status': !exists(json, 'status') ? undefined : json['status'],
+    };
+}
+
+export function PetToJSON(value?: Pet): any {
+    if (value === undefined) {
+        return undefined;
+    }
+    return {
+        'id': value.id,
+        'category': CategoryToJSON(value.category),
+        'name': value.name,
+        'photoUrls': value.photoUrls,
+        'tags': value.tags === undefined ? undefined : (value.tags as Array<any>).map(TagToJSON),
+        'status': value.status,
+    };
+}
+
+/**
+* @export
+* @enum {string}
+*/
+export enum PetStatusEnum {
+    Available = 'available',
+    Pending = 'pending',
+    Sold = 'sold'
+}
+
+
diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/models/InlineObject.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Tag.ts
similarity index 61%
rename from samples/client/petstore/typescript-fetch/builds/with-interfaces/models/InlineObject.ts
rename to samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Tag.ts
index 2998b1463ce5d3448c920d23ccda15c3776eea31..7c8098f6dc018943d99871d8c3c0fad0f58d28e1 100644
--- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/models/InlineObject.ts
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/Tag.ts
@@ -13,39 +13,39 @@
 
 import { exists, mapValues } from '../runtime';
 /**
- * 
+ * A tag for a pet
  * @export
- * @interface InlineObject
+ * @interface Tag
  */
-export interface InlineObject {
+export interface Tag {
     /**
-     * Updated name of the pet
-     * @type {string}
-     * @memberof InlineObject
+     * 
+     * @type {number}
+     * @memberof Tag
      */
-    name?: string;
+    id?: number;
     /**
-     * Updated status of the pet
+     * 
      * @type {string}
-     * @memberof InlineObject
+     * @memberof Tag
      */
-    status?: string;
+    name?: string;
 }
 
-export function InlineObjectFromJSON(json: any): InlineObject {
+export function TagFromJSON(json: any): Tag {
     return {
+        'id': !exists(json, 'id') ? undefined : json['id'],
         'name': !exists(json, 'name') ? undefined : json['name'],
-        'status': !exists(json, 'status') ? undefined : json['status'],
     };
 }
 
-export function InlineObjectToJSON(value?: InlineObject): any {
+export function TagToJSON(value?: Tag): any {
     if (value === undefined) {
         return undefined;
     }
     return {
+        'id': value.id,
         'name': value.name,
-        'status': value.status,
     };
 }
 
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/User.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/User.ts
new file mode 100644
index 0000000000000000000000000000000000000000..fd7430063f1c2134c5021a51ef60e8c8a33db895
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/User.ts
@@ -0,0 +1,100 @@
+// tslint:disable
+/**
+ * OpenAPI Petstore
+ * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * 
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+import { exists, mapValues } from '../runtime';
+/**
+ * A User who is purchasing from the pet store
+ * @export
+ * @interface User
+ */
+export interface User {
+    /**
+     * 
+     * @type {number}
+     * @memberof User
+     */
+    id?: number;
+    /**
+     * 
+     * @type {string}
+     * @memberof User
+     */
+    username?: string;
+    /**
+     * 
+     * @type {string}
+     * @memberof User
+     */
+    firstName?: string;
+    /**
+     * 
+     * @type {string}
+     * @memberof User
+     */
+    lastName?: string;
+    /**
+     * 
+     * @type {string}
+     * @memberof User
+     */
+    email?: string;
+    /**
+     * 
+     * @type {string}
+     * @memberof User
+     */
+    password?: string;
+    /**
+     * 
+     * @type {string}
+     * @memberof User
+     */
+    phone?: string;
+    /**
+     * User Status
+     * @type {number}
+     * @memberof User
+     */
+    userStatus?: number;
+}
+
+export function UserFromJSON(json: any): User {
+    return {
+        'id': !exists(json, 'id') ? undefined : json['id'],
+        'username': !exists(json, 'username') ? undefined : json['username'],
+        'firstName': !exists(json, 'firstName') ? undefined : json['firstName'],
+        'lastName': !exists(json, 'lastName') ? undefined : json['lastName'],
+        'email': !exists(json, 'email') ? undefined : json['email'],
+        'password': !exists(json, 'password') ? undefined : json['password'],
+        'phone': !exists(json, 'phone') ? undefined : json['phone'],
+        'userStatus': !exists(json, 'userStatus') ? undefined : json['userStatus'],
+    };
+}
+
+export function UserToJSON(value?: User): any {
+    if (value === undefined) {
+        return undefined;
+    }
+    return {
+        'id': value.id,
+        'username': value.username,
+        'firstName': value.firstName,
+        'lastName': value.lastName,
+        'email': value.email,
+        'password': value.password,
+        'phone': value.phone,
+        'userStatus': value.userStatus,
+    };
+}
+
+
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/index.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/index.ts
new file mode 100644
index 0000000000000000000000000000000000000000..b07ddc8446a0aaae71b30f1961d306834c0d33ab
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/models/index.ts
@@ -0,0 +1,6 @@
+export * from './Category';
+export * from './ModelApiResponse';
+export * from './Order';
+export * from './Pet';
+export * from './Tag';
+export * from './User';
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/pom.xml b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a6fc39c4f08dc9a30de600d18541ce480a910502
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/pom.xml
@@ -0,0 +1,26 @@
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.openapitools</groupId>
+    <artifactId>TypeScriptAngularBuildPestoreClientTests</artifactId>
+    <packaging>pom</packaging>
+    <version>1.0-SNAPSHOT</version>
+    <name>TS Fetch Multiple Parameters Petstore Client</name>
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>copy-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <outputDirectory>${project.build.directory}</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts
new file mode 100644
index 0000000000000000000000000000000000000000..c95a101fbac7c4f706b22e869a9b9410636936a3
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts
@@ -0,0 +1,289 @@
+// tslint:disable
+/**
+ * OpenAPI Petstore
+ * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ * 
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+
+export const BASE_PATH = "http://petstore.swagger.io/v2".replace(/\/+$/, "");
+
+const isBlob = (value: any) => typeof Blob !== 'undefined' && value instanceof Blob;
+
+/**
+ * This is the base class for all generated API classes.
+ */
+export class BaseAPI {
+
+    private middleware: Middleware[];
+
+    constructor(protected configuration = new Configuration()) {
+        this.middleware = configuration.middleware;
+    }
+
+    withMiddleware<T extends BaseAPI>(this: T, ...middlewares: Middleware[]) {
+        const next = this.clone<T>();
+        next.middleware = next.middleware.concat(...middlewares);
+        return next;
+    }
+
+    withPreMiddleware<T extends BaseAPI>(this: T, ...preMiddlewares: Array<Middleware['pre']>) {
+        const middlewares = preMiddlewares.map((pre) => ({ pre }));
+        return this.withMiddleware<T>(...middlewares);
+    }
+
+    withPostMiddleware<T extends BaseAPI>(this: T, ...postMiddlewares: Array<Middleware['post']>) {
+        const middlewares = postMiddlewares.map((post) => ({ post }));
+        return this.withMiddleware<T>(...middlewares);
+    }
+
+    protected async request(context: RequestOpts): Promise<Response> {
+        const { url, init } = this.createFetchParams(context);
+        const response = await this.fetchApi(url, init);
+        if (response.status >= 200 && response.status < 300) {
+            return response;
+        }
+        throw response;
+    }
+
+    private createFetchParams(context: RequestOpts) {
+        let url = this.configuration.basePath + context.path;
+        if (context.query !== undefined && Object.keys(context.query).length !== 0) {
+            // only add the querystring to the URL if there are query parameters.
+            // this is done to avoid urls ending with a "?" character which buggy webservers
+            // do not handle correctly sometimes.
+            url += '?' + this.configuration.queryParamsStringify(context.query);
+        }
+        const body = (context.body instanceof FormData || isBlob(context.body))
+	    ? context.body
+	    : JSON.stringify(context.body);
+        const init = {
+            method: context.method,
+            headers: context.headers,
+            body,
+        };
+        return { url, init };
+    }
+
+    private fetchApi = async (url: string, init: RequestInit) => {
+        let fetchParams = { url, init };
+        for (const middleware of this.middleware) {
+            if (middleware.pre) {
+                fetchParams = await middleware.pre({
+                    fetch: this.fetchApi,
+                    ...fetchParams,
+                }) || fetchParams;
+            }
+        }
+        let response = await this.configuration.fetchApi(fetchParams.url, fetchParams.init);
+        for (const middleware of this.middleware) {
+            if (middleware.post) {
+                response = await middleware.post({
+                    fetch: this.fetchApi,
+                    url,
+                    init,
+                    response: response.clone(),
+                }) || response;
+            }
+        }
+        return response;
+    }
+
+    /**
+     * Create a shallow clone of `this` by constructing a new instance
+     * and then shallow cloning data members.
+     */
+    private clone<T extends BaseAPI>(this: T): T {
+        const constructor = this.constructor as any;
+        const next = new constructor(this.configuration);
+        next.middleware = this.middleware.slice();
+        return next;
+    }
+};
+
+export class RequiredError extends Error {
+    name: "RequiredError" = "RequiredError";
+    constructor(public field: string, msg?: string) {
+        super(msg);
+    }
+}
+
+export const COLLECTION_FORMATS = {
+    csv: ",",
+    ssv: " ",
+    tsv: "\t",
+    pipes: "|",
+};
+
+export type FetchAPI = GlobalFetch['fetch'];
+
+export interface ConfigurationParameters {
+    basePath?: string; // override base path
+    fetchApi?: FetchAPI; // override for fetch implementation
+    middleware?: Middleware[]; // middleware to apply before/after fetch requests
+    queryParamsStringify?: (params: HTTPQuery) => string; // stringify function for query strings
+    username?: string; // parameter for basic security
+    password?: string; // parameter for basic security
+    apiKey?: string | ((name: string) => string); // parameter for apiKey security
+    accessToken?: string | ((name: string, scopes?: string[]) => string); // parameter for oauth2 security
+}
+
+export class Configuration {
+    constructor(private configuration: ConfigurationParameters = {}) {}
+
+    get basePath(): string {
+        return this.configuration.basePath || BASE_PATH;
+    }
+
+    get fetchApi(): FetchAPI {
+        return this.configuration.fetchApi || window.fetch.bind(window);
+    }
+
+    get middleware(): Middleware[] {
+        return this.configuration.middleware || [];
+    }
+
+    get queryParamsStringify(): (params: HTTPQuery) => string {
+        return this.configuration.queryParamsStringify || querystring;
+    }
+
+    get username(): string | undefined {
+        return this.configuration.username;
+    }
+
+    get password(): string | undefined {
+        return this.configuration.password;
+    }
+
+    get apiKey(): ((name: string) => string) | undefined {
+        const apiKey = this.configuration.apiKey;
+        if (apiKey) {
+            return typeof apiKey === 'function' ? apiKey : () => apiKey;
+        }
+        return undefined;
+    }
+
+    get accessToken(): ((name: string, scopes?: string[]) => string) | undefined {
+        const accessToken = this.configuration.accessToken;
+        if (accessToken) {
+            return typeof accessToken === 'function' ? accessToken : () => accessToken;
+        }
+        return undefined;
+    }
+}
+
+export type Json = any;
+export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS';
+export type HTTPHeaders = { [key: string]: string };
+export type HTTPQuery = { [key: string]: string | number | null | boolean | Array<string | number | null | boolean> | HTTPQuery };
+export type HTTPBody = Json | FormData;
+export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original';
+
+export interface FetchParams {
+    url: string;
+    init: RequestInit;
+}
+
+export interface RequestOpts {
+    path: string;
+    method: HTTPMethod;
+    headers: HTTPHeaders;
+    query?: HTTPQuery;
+    body?: HTTPBody;
+}
+
+export function exists(json: any, key: string) {
+    const value = json[key];
+    return value !== null && value !== undefined;
+}
+
+export function querystring(params: HTTPQuery, prefix: string = ''): string {
+    return Object.keys(params)
+        .map((key) => {
+            const fullKey = prefix + (prefix.length ? `[${key}]` : key);
+            const value = params[key];
+            if (value instanceof Array) {
+                const multiValue = value.map(singleValue => encodeURIComponent(String(singleValue)))
+                    .join(`&${encodeURIComponent(fullKey)}=`);
+                return `${encodeURIComponent(fullKey)}=${multiValue}`;
+            }
+            if (value instanceof Object) {
+                return querystring(value as HTTPQuery, fullKey);
+            }
+            return `${encodeURIComponent(fullKey)}=${encodeURIComponent(String(value))}`;
+        })
+        .filter(part => part.length > 0)
+        .join('&');
+}
+
+export function mapValues(data: any, fn: (item: any) => any) {
+  return Object.keys(data).reduce(
+    (acc, key) => ({ ...acc, [key]: fn(data[key]) }),
+    {}
+  );
+}
+
+export interface RequestContext {
+    fetch: FetchAPI;
+    url: string;
+    init: RequestInit;
+}
+
+export interface ResponseContext {
+    fetch: FetchAPI;
+    url: string;
+    init: RequestInit;
+    response: Response;
+}
+
+export interface Middleware {
+    pre?(context: RequestContext): Promise<FetchParams | void>;
+    post?(context: ResponseContext): Promise<Response | void>;
+}
+
+export interface ApiResponse<T> {
+    raw: Response;
+    value(): Promise<T>;
+}
+
+export interface ResponseTransformer<T> {
+    (json: any): T;
+}
+
+export class JSONApiResponse<T> {
+    constructor(public raw: Response, private transformer: ResponseTransformer<T> = (jsonValue: any) => jsonValue) {}
+
+    async value() {
+        return this.transformer(await this.raw.json());
+    }
+}
+
+export class VoidApiResponse {
+    constructor(public raw: Response) {}
+
+    async value() {
+        return undefined;
+    }
+}
+
+export class BlobApiResponse {
+    constructor(public raw: Response) {}
+
+    async value() {
+        return await this.raw.blob();
+    };
+}
+
+export class TextApiResponse {
+    constructor(public raw: Response) {}
+
+    async value() {
+        return await this.raw.text();
+    };
+}
diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/tsconfig.json b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/tsconfig.json
new file mode 100644
index 0000000000000000000000000000000000000000..d65f2a95afc1908bf3d6ee2cf41be5863d999c15
--- /dev/null
+++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/tsconfig.json
@@ -0,0 +1,21 @@
+{
+  "compilerOptions": {
+    "declaration": true,
+    "target": "es5",
+    "module": "commonjs",
+    "moduleResolution": "node",
+    "outDir": "dist",
+    "rootDir": ".",
+    "lib": [
+      "es6",
+      "dom"
+    ],
+    "typeRoots": [
+      "node_modules/@types"
+    ]
+  },
+  "exclude": [
+    "dist",
+    "node_modules"
+  ]
+}
diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/PetApi.ts
index 1fcb27ef1c5eaa046a19b9069cdacf4fd9728827..e43896cc29293bb05c921674b284c194a96d88c0 100644
--- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/PetApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/PetApi.ts
@@ -98,9 +98,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Add a new pet to the store
-     */
+   /**
+    * Add a new pet to the store
+    */
     async addPet(requestParameters: AddPetRequest): Promise<void> {
         await this.addPetRaw(requestParameters);
     }
@@ -140,9 +140,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Deletes a pet
-     */
+   /**
+    * Deletes a pet
+    */
     async deletePet(requestParameters: DeletePetRequest): Promise<void> {
         await this.deletePetRaw(requestParameters);
     }
@@ -183,10 +183,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
     }
 
-    /**
-     * Multiple status values can be provided with comma separated strings
-     * Finds Pets by status
-     */
+   /**
+    * Multiple status values can be provided with comma separated strings
+    * Finds Pets by status
+    */
     async findPetsByStatus(requestParameters: FindPetsByStatusRequest): Promise<Array<Pet>> {
         const response = await this.findPetsByStatusRaw(requestParameters);
         return await response.value();
@@ -228,10 +228,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
     }
 
-    /**
-     * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
-     * Finds Pets by tags
-     */
+   /**
+    * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
+    * Finds Pets by tags
+    */
     async findPetsByTags(requestParameters: FindPetsByTagsRequest): Promise<Array<Pet>> {
         const response = await this.findPetsByTagsRaw(requestParameters);
         return await response.value();
@@ -264,10 +264,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => PetFromJSON(jsonValue));
     }
 
-    /**
-     * Returns a single pet
-     * Find pet by ID
-     */
+   /**
+    * Returns a single pet
+    * Find pet by ID
+    */
     async getPetById(requestParameters: GetPetByIdRequest): Promise<Pet> {
         const response = await this.getPetByIdRaw(requestParameters);
         return await response.value();
@@ -307,9 +307,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Update an existing pet
-     */
+   /**
+    * Update an existing pet
+    */
     async updatePet(requestParameters: UpdatePetRequest): Promise<void> {
         await this.updatePetRaw(requestParameters);
     }
@@ -355,9 +355,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Updates a pet in the store with form data
-     */
+   /**
+    * Updates a pet in the store with form data
+    */
     async updatePetWithForm(requestParameters: UpdatePetWithFormRequest): Promise<void> {
         await this.updatePetWithFormRaw(requestParameters);
     }
@@ -403,9 +403,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue));
     }
 
-    /**
-     * uploads an image
-     */
+   /**
+    * uploads an image
+    */
     async uploadFile(requestParameters: UploadFileRequest): Promise<ModelApiResponse> {
         const response = await this.uploadFileRaw(requestParameters);
         return await response.value();
diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/StoreApi.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/StoreApi.ts
index 4b645dea987e2d6786dcf49bf8419c87302fae7b..916660981657f197c5a6112d7e14213ec3bdd6d6 100644
--- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/StoreApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/StoreApi.ts
@@ -59,10 +59,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
-     * Delete purchase order by ID
-     */
+   /**
+    * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
+    * Delete purchase order by ID
+    */
     async deleteOrder(requestParameters: DeleteOrderRequest): Promise<void> {
         await this.deleteOrderRaw(requestParameters);
     }
@@ -90,10 +90,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse<any>(response);
     }
 
-    /**
-     * Returns a map of status codes to quantities
-     * Returns pet inventories by status
-     */
+   /**
+    * Returns a map of status codes to quantities
+    * Returns pet inventories by status
+    */
     async getInventory(): Promise<{ [key: string]: number; }> {
         const response = await this.getInventoryRaw();
         return await response.value();
@@ -122,10 +122,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
     }
 
-    /**
-     * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
-     * Find purchase order by ID
-     */
+   /**
+    * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+    * Find purchase order by ID
+    */
     async getOrderById(requestParameters: GetOrderByIdRequest): Promise<Order> {
         const response = await this.getOrderByIdRaw(requestParameters);
         return await response.value();
@@ -156,9 +156,9 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
     }
 
-    /**
-     * Place an order for a pet
-     */
+   /**
+    * Place an order for a pet
+    */
     async placeOrder(requestParameters: PlaceOrderRequest): Promise<Order> {
         const response = await this.placeOrderRaw(requestParameters);
         return await response.value();
diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/UserApi.ts
index 4126b817ee9450d5b97d4feae623986592d4448b..1696b600f57fbaeb06f0e1eac9e7bde15b99da12 100644
--- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/UserApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/UserApi.ts
@@ -80,10 +80,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Create user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Create user
+    */
     async createUser(requestParameters: CreateUserRequest): Promise<void> {
         await this.createUserRaw(requestParameters);
     }
@@ -113,9 +113,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Creates list of users with given input array
-     */
+   /**
+    * Creates list of users with given input array
+    */
     async createUsersWithArrayInput(requestParameters: CreateUsersWithArrayInputRequest): Promise<void> {
         await this.createUsersWithArrayInputRaw(requestParameters);
     }
@@ -145,9 +145,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Creates list of users with given input array
-     */
+   /**
+    * Creates list of users with given input array
+    */
     async createUsersWithListInput(requestParameters: CreateUsersWithListInputRequest): Promise<void> {
         await this.createUsersWithListInputRaw(requestParameters);
     }
@@ -175,10 +175,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Delete user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Delete user
+    */
     async deleteUser(requestParameters: DeleteUserRequest): Promise<void> {
         await this.deleteUserRaw(requestParameters);
     }
@@ -205,9 +205,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => UserFromJSON(jsonValue));
     }
 
-    /**
-     * Get user by user name
-     */
+   /**
+    * Get user by user name
+    */
     async getUserByName(requestParameters: GetUserByNameRequest): Promise<User> {
         const response = await this.getUserByNameRaw(requestParameters);
         return await response.value();
@@ -247,9 +247,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.TextApiResponse(response);
     }
 
-    /**
-     * Logs user into the system
-     */
+   /**
+    * Logs user into the system
+    */
     async loginUser(requestParameters: LoginUserRequest): Promise<string> {
         const response = await this.loginUserRaw(requestParameters);
         return await response.value();
@@ -273,9 +273,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Logs out current logged in user session
-     */
+   /**
+    * Logs out current logged in user session
+    */
     async logoutUser(): Promise<void> {
         await this.logoutUserRaw();
     }
@@ -310,10 +310,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Updated user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Updated user
+    */
     async updateUser(requestParameters: UpdateUserRequest): Promise<void> {
         await this.updateUserRaw(requestParameters);
     }
diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/models/ApiResponse.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/models/ApiResponse.ts
deleted file mode 100644
index 2275473e610bbbbbd596df752cb87e86377f961d..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/models/ApiResponse.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * OpenAPI spec version: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-import { exists } from '../runtime';
-/**
- * Describes the result of uploading an image resource
- * @export
- * @interface ApiResponse
- */
-export interface ApiResponse {
-    /**
-     * 
-     * @type {number}
-     * @memberof ApiResponse
-     */
-    code?: number;
-    /**
-     * 
-     * @type {string}
-     * @memberof ApiResponse
-     */
-    type?: string;
-    /**
-     * 
-     * @type {string}
-     * @memberof ApiResponse
-     */
-    message?: string;
-}
-
-export function ApiResponseFromJSON(json: any): ApiResponse {
-    return {
-        'code': !exists(json, 'code') ? undefined : json['code'],
-        'type': !exists(json, 'type') ? undefined : json['type'],
-        'message': !exists(json, 'message') ? undefined : json['message'],
-    };
-}
-
-export function ApiResponseToJSON(value?: ApiResponse): any {
-    if (value === undefined) {
-        return undefined;
-    }
-    return {
-        'code': value.code,
-        'type': value.type,
-        'message': value.message,
-    };
-}
-
-
diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/models/InlineObject1.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/models/InlineObject1.ts
deleted file mode 100644
index 4cd90b1379596a0d741db4757b997a29292f9008..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/models/InlineObject1.ts
+++ /dev/null
@@ -1,52 +0,0 @@
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * The version of the OpenAPI document: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-import { exists, mapValues } from '../runtime';
-/**
- * 
- * @export
- * @interface InlineObject1
- */
-export interface InlineObject1 {
-    /**
-     * Additional data to pass to server
-     * @type {string}
-     * @memberof InlineObject1
-     */
-    additionalMetadata?: string;
-    /**
-     * file to upload
-     * @type {Blob}
-     * @memberof InlineObject1
-     */
-    file?: Blob;
-}
-
-export function InlineObject1FromJSON(json: any): InlineObject1 {
-    return {
-        'additionalMetadata': !exists(json, 'additionalMetadata') ? undefined : json['additionalMetadata'],
-        'file': !exists(json, 'file') ? undefined : json['file'],
-    };
-}
-
-export function InlineObject1ToJSON(value?: InlineObject1): any {
-    if (value === undefined) {
-        return undefined;
-    }
-    return {
-        'additionalMetadata': value.additionalMetadata,
-        'file': value.file,
-    };
-}
-
-
diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/PetApi.ts
index 1fcb27ef1c5eaa046a19b9069cdacf4fd9728827..e43896cc29293bb05c921674b284c194a96d88c0 100644
--- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/PetApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/PetApi.ts
@@ -98,9 +98,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Add a new pet to the store
-     */
+   /**
+    * Add a new pet to the store
+    */
     async addPet(requestParameters: AddPetRequest): Promise<void> {
         await this.addPetRaw(requestParameters);
     }
@@ -140,9 +140,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Deletes a pet
-     */
+   /**
+    * Deletes a pet
+    */
     async deletePet(requestParameters: DeletePetRequest): Promise<void> {
         await this.deletePetRaw(requestParameters);
     }
@@ -183,10 +183,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
     }
 
-    /**
-     * Multiple status values can be provided with comma separated strings
-     * Finds Pets by status
-     */
+   /**
+    * Multiple status values can be provided with comma separated strings
+    * Finds Pets by status
+    */
     async findPetsByStatus(requestParameters: FindPetsByStatusRequest): Promise<Array<Pet>> {
         const response = await this.findPetsByStatusRaw(requestParameters);
         return await response.value();
@@ -228,10 +228,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(PetFromJSON));
     }
 
-    /**
-     * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
-     * Finds Pets by tags
-     */
+   /**
+    * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
+    * Finds Pets by tags
+    */
     async findPetsByTags(requestParameters: FindPetsByTagsRequest): Promise<Array<Pet>> {
         const response = await this.findPetsByTagsRaw(requestParameters);
         return await response.value();
@@ -264,10 +264,10 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => PetFromJSON(jsonValue));
     }
 
-    /**
-     * Returns a single pet
-     * Find pet by ID
-     */
+   /**
+    * Returns a single pet
+    * Find pet by ID
+    */
     async getPetById(requestParameters: GetPetByIdRequest): Promise<Pet> {
         const response = await this.getPetByIdRaw(requestParameters);
         return await response.value();
@@ -307,9 +307,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Update an existing pet
-     */
+   /**
+    * Update an existing pet
+    */
     async updatePet(requestParameters: UpdatePetRequest): Promise<void> {
         await this.updatePetRaw(requestParameters);
     }
@@ -355,9 +355,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Updates a pet in the store with form data
-     */
+   /**
+    * Updates a pet in the store with form data
+    */
     async updatePetWithForm(requestParameters: UpdatePetWithFormRequest): Promise<void> {
         await this.updatePetWithFormRaw(requestParameters);
     }
@@ -403,9 +403,9 @@ export class PetApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue));
     }
 
-    /**
-     * uploads an image
-     */
+   /**
+    * uploads an image
+    */
     async uploadFile(requestParameters: UploadFileRequest): Promise<ModelApiResponse> {
         const response = await this.uploadFileRaw(requestParameters);
         return await response.value();
diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/StoreApi.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/StoreApi.ts
index 4b645dea987e2d6786dcf49bf8419c87302fae7b..916660981657f197c5a6112d7e14213ec3bdd6d6 100644
--- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/StoreApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/StoreApi.ts
@@ -59,10 +59,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
-     * Delete purchase order by ID
-     */
+   /**
+    * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
+    * Delete purchase order by ID
+    */
     async deleteOrder(requestParameters: DeleteOrderRequest): Promise<void> {
         await this.deleteOrderRaw(requestParameters);
     }
@@ -90,10 +90,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse<any>(response);
     }
 
-    /**
-     * Returns a map of status codes to quantities
-     * Returns pet inventories by status
-     */
+   /**
+    * Returns a map of status codes to quantities
+    * Returns pet inventories by status
+    */
     async getInventory(): Promise<{ [key: string]: number; }> {
         const response = await this.getInventoryRaw();
         return await response.value();
@@ -122,10 +122,10 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
     }
 
-    /**
-     * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
-     * Find purchase order by ID
-     */
+   /**
+    * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+    * Find purchase order by ID
+    */
     async getOrderById(requestParameters: GetOrderByIdRequest): Promise<Order> {
         const response = await this.getOrderByIdRaw(requestParameters);
         return await response.value();
@@ -156,9 +156,9 @@ export class StoreApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => OrderFromJSON(jsonValue));
     }
 
-    /**
-     * Place an order for a pet
-     */
+   /**
+    * Place an order for a pet
+    */
     async placeOrder(requestParameters: PlaceOrderRequest): Promise<Order> {
         const response = await this.placeOrderRaw(requestParameters);
         return await response.value();
diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/UserApi.ts
index 4126b817ee9450d5b97d4feae623986592d4448b..1696b600f57fbaeb06f0e1eac9e7bde15b99da12 100644
--- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/UserApi.ts
+++ b/samples/client/petstore/typescript-fetch/builds/with-npm-version/apis/UserApi.ts
@@ -80,10 +80,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Create user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Create user
+    */
     async createUser(requestParameters: CreateUserRequest): Promise<void> {
         await this.createUserRaw(requestParameters);
     }
@@ -113,9 +113,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Creates list of users with given input array
-     */
+   /**
+    * Creates list of users with given input array
+    */
     async createUsersWithArrayInput(requestParameters: CreateUsersWithArrayInputRequest): Promise<void> {
         await this.createUsersWithArrayInputRaw(requestParameters);
     }
@@ -145,9 +145,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Creates list of users with given input array
-     */
+   /**
+    * Creates list of users with given input array
+    */
     async createUsersWithListInput(requestParameters: CreateUsersWithListInputRequest): Promise<void> {
         await this.createUsersWithListInputRaw(requestParameters);
     }
@@ -175,10 +175,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Delete user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Delete user
+    */
     async deleteUser(requestParameters: DeleteUserRequest): Promise<void> {
         await this.deleteUserRaw(requestParameters);
     }
@@ -205,9 +205,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.JSONApiResponse(response, (jsonValue) => UserFromJSON(jsonValue));
     }
 
-    /**
-     * Get user by user name
-     */
+   /**
+    * Get user by user name
+    */
     async getUserByName(requestParameters: GetUserByNameRequest): Promise<User> {
         const response = await this.getUserByNameRaw(requestParameters);
         return await response.value();
@@ -247,9 +247,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.TextApiResponse(response);
     }
 
-    /**
-     * Logs user into the system
-     */
+   /**
+    * Logs user into the system
+    */
     async loginUser(requestParameters: LoginUserRequest): Promise<string> {
         const response = await this.loginUserRaw(requestParameters);
         return await response.value();
@@ -273,9 +273,9 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * Logs out current logged in user session
-     */
+   /**
+    * Logs out current logged in user session
+    */
     async logoutUser(): Promise<void> {
         await this.logoutUserRaw();
     }
@@ -310,10 +310,10 @@ export class UserApi extends runtime.BaseAPI {
         return new runtime.VoidApiResponse(response);
     }
 
-    /**
-     * This can only be done by the logged in user.
-     * Updated user
-     */
+   /**
+    * This can only be done by the logged in user.
+    * Updated user
+    */
     async updateUser(requestParameters: UpdateUserRequest): Promise<void> {
         await this.updateUserRaw(requestParameters);
     }
diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/models/ApiResponse.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/models/ApiResponse.ts
deleted file mode 100644
index 2275473e610bbbbbd596df752cb87e86377f961d..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/models/ApiResponse.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * OpenAPI spec version: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-import { exists } from '../runtime';
-/**
- * Describes the result of uploading an image resource
- * @export
- * @interface ApiResponse
- */
-export interface ApiResponse {
-    /**
-     * 
-     * @type {number}
-     * @memberof ApiResponse
-     */
-    code?: number;
-    /**
-     * 
-     * @type {string}
-     * @memberof ApiResponse
-     */
-    type?: string;
-    /**
-     * 
-     * @type {string}
-     * @memberof ApiResponse
-     */
-    message?: string;
-}
-
-export function ApiResponseFromJSON(json: any): ApiResponse {
-    return {
-        'code': !exists(json, 'code') ? undefined : json['code'],
-        'type': !exists(json, 'type') ? undefined : json['type'],
-        'message': !exists(json, 'message') ? undefined : json['message'],
-    };
-}
-
-export function ApiResponseToJSON(value?: ApiResponse): any {
-    if (value === undefined) {
-        return undefined;
-    }
-    return {
-        'code': value.code,
-        'type': value.type,
-        'message': value.message,
-    };
-}
-
-
diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/models/InlineObject.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/models/InlineObject.ts
deleted file mode 100644
index 2998b1463ce5d3448c920d23ccda15c3776eea31..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/models/InlineObject.ts
+++ /dev/null
@@ -1,52 +0,0 @@
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * The version of the OpenAPI document: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-import { exists, mapValues } from '../runtime';
-/**
- * 
- * @export
- * @interface InlineObject
- */
-export interface InlineObject {
-    /**
-     * Updated name of the pet
-     * @type {string}
-     * @memberof InlineObject
-     */
-    name?: string;
-    /**
-     * Updated status of the pet
-     * @type {string}
-     * @memberof InlineObject
-     */
-    status?: string;
-}
-
-export function InlineObjectFromJSON(json: any): InlineObject {
-    return {
-        'name': !exists(json, 'name') ? undefined : json['name'],
-        'status': !exists(json, 'status') ? undefined : json['status'],
-    };
-}
-
-export function InlineObjectToJSON(value?: InlineObject): any {
-    if (value === undefined) {
-        return undefined;
-    }
-    return {
-        'name': value.name,
-        'status': value.status,
-    };
-}
-
-
diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/models/InlineObject1.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/models/InlineObject1.ts
deleted file mode 100644
index 4cd90b1379596a0d741db4757b997a29292f9008..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/models/InlineObject1.ts
+++ /dev/null
@@ -1,52 +0,0 @@
-// tslint:disable
-/**
- * OpenAPI Petstore
- * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
- *
- * The version of the OpenAPI document: 1.0.0
- * 
- *
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
- * https://openapi-generator.tech
- * Do not edit the class manually.
- */
-
-import { exists, mapValues } from '../runtime';
-/**
- * 
- * @export
- * @interface InlineObject1
- */
-export interface InlineObject1 {
-    /**
-     * Additional data to pass to server
-     * @type {string}
-     * @memberof InlineObject1
-     */
-    additionalMetadata?: string;
-    /**
-     * file to upload
-     * @type {Blob}
-     * @memberof InlineObject1
-     */
-    file?: Blob;
-}
-
-export function InlineObject1FromJSON(json: any): InlineObject1 {
-    return {
-        'additionalMetadata': !exists(json, 'additionalMetadata') ? undefined : json['additionalMetadata'],
-        'file': !exists(json, 'file') ? undefined : json['file'],
-    };
-}
-
-export function InlineObject1ToJSON(value?: InlineObject1): any {
-    if (value === undefined) {
-        return undefined;
-    }
-    return {
-        'additionalMetadata': value.additionalMetadata,
-        'file': value.file,
-    };
-}
-
-
diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/package-lock.json b/samples/client/petstore/typescript-fetch/builds/with-npm-version/package-lock.json
deleted file mode 100644
index e8dc0d00b2f3e79a77648e29be15aa71addac6da..0000000000000000000000000000000000000000
--- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/package-lock.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  "name": "@swagger/typescript-fetch-petstore",
-  "version": "1.0.0",
-  "lockfileVersion": 1,
-  "requires": true,
-  "dependencies": {
-    "typescript": {
-      "version": "2.9.2",
-      "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz",
-      "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==",
-      "dev": true
-    }
-  }
-}
diff --git a/samples/client/petstore/typescript-fetch/tests/default/package-lock.json b/samples/client/petstore/typescript-fetch/tests/default/package-lock.json
index 5310ef1dfba18c8625e35fe6d88a95898ab47195..400cf1276da905bdfd1f2eb99a6cf9edd7aaaaa9 100644
--- a/samples/client/petstore/typescript-fetch/tests/default/package-lock.json
+++ b/samples/client/petstore/typescript-fetch/tests/default/package-lock.json
@@ -4,14 +4,11 @@
   "lockfileVersion": 1,
   "requires": true,
   "dependencies": {
+    "@openapitools/typescript-fetch-petstore": {
+      "version": "file:../../builds/with-npm-version"
+    },
     "@swagger/typescript-fetch-petstore": {
-      "version": "file:../../builds/with-npm-version",
-      "dependencies": {
-        "typescript": {
-          "version": "2.9.2",
-          "bundled": true
-        }
-      }
+      "version": "file:../../builds/with-npm-version"
     },
     "@types/chai": {
       "version": "4.1.6",
@@ -1505,7 +1502,8 @@
         "ansi-regex": {
           "version": "2.1.1",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "aproba": {
           "version": "1.2.0",
@@ -1526,12 +1524,14 @@
         "balanced-match": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "brace-expansion": {
           "version": "1.1.11",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "balanced-match": "^1.0.0",
             "concat-map": "0.0.1"
@@ -1546,17 +1546,20 @@
         "code-point-at": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "concat-map": {
           "version": "0.0.1",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "console-control-strings": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "core-util-is": {
           "version": "1.0.2",
@@ -1673,7 +1676,8 @@
         "inherits": {
           "version": "2.0.3",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "ini": {
           "version": "1.3.5",
@@ -1685,6 +1689,7 @@
           "version": "1.0.0",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "number-is-nan": "^1.0.0"
           }
@@ -1699,6 +1704,7 @@
           "version": "3.0.4",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "brace-expansion": "^1.1.7"
           }
@@ -1706,12 +1712,14 @@
         "minimist": {
           "version": "0.0.8",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "minipass": {
           "version": "2.2.4",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "safe-buffer": "^5.1.1",
             "yallist": "^3.0.0"
@@ -1730,6 +1738,7 @@
           "version": "0.5.1",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "minimist": "0.0.8"
           }
@@ -1810,7 +1819,8 @@
         "number-is-nan": {
           "version": "1.0.1",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "object-assign": {
           "version": "4.1.1",
@@ -1822,6 +1832,7 @@
           "version": "1.4.0",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "wrappy": "1"
           }
@@ -1907,7 +1918,8 @@
         "safe-buffer": {
           "version": "5.1.1",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "safer-buffer": {
           "version": "2.1.2",
@@ -1943,6 +1955,7 @@
           "version": "1.0.2",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "code-point-at": "^1.0.0",
             "is-fullwidth-code-point": "^1.0.0",
@@ -1962,6 +1975,7 @@
           "version": "3.0.1",
           "bundled": true,
           "dev": true,
+          "optional": true,
           "requires": {
             "ansi-regex": "^2.0.0"
           }
@@ -2005,12 +2019,14 @@
         "wrappy": {
           "version": "1.0.2",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         },
         "yallist": {
           "version": "3.0.2",
           "bundled": true,
-          "dev": true
+          "dev": true,
+          "optional": true
         }
       }
     },
diff --git a/samples/client/petstore/typescript-fetch/tests/default/package.json b/samples/client/petstore/typescript-fetch/tests/default/package.json
index fee4a03b85573cc4c7f3de02235892cc461b3c1d..906804784fe90b8878105693b6c8c358502179e6 100644
--- a/samples/client/petstore/typescript-fetch/tests/default/package.json
+++ b/samples/client/petstore/typescript-fetch/tests/default/package.json
@@ -1,6 +1,7 @@
 {
   "private": true,
   "dependencies": {
+    "@openapitools/typescript-fetch-petstore": "file:../../builds/with-npm-version",
     "@swagger/typescript-fetch-petstore": "file:../../builds/with-npm-version",
     "chai": "^4.1.0",
     "ts-node": "^3.3.0"
diff --git a/samples/client/petstore/typescript-node/default/api/petApi.ts b/samples/client/petstore/typescript-node/default/api/petApi.ts
index c37458099cb131fd85cd76952c3b963af05dbcda..2566d2b935333cbc4affbbdb4e2caf72fdc56464 100644
--- a/samples/client/petstore/typescript-node/default/api/petApi.ts
+++ b/samples/client/petstore/typescript-node/default/api/petApi.ts
@@ -109,28 +109,30 @@ export class PetApi {
             body: ObjectSerializer.serialize(body, "Pet")
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
-
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
+
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -166,28 +168,30 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -224,29 +228,31 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Array<Pet>;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Array<Pet>");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Array<Pet>;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Array<Pet>");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -283,29 +289,31 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Array<Pet>;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Array<Pet>");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Array<Pet>;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Array<Pet>");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -339,29 +347,31 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.api_key.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.api_key.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Pet;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Pet");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Pet;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Pet");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -395,28 +405,30 @@ export class PetApi {
             body: ObjectSerializer.serialize(body, "Pet")
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -460,28 +472,30 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -526,29 +540,31 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: ApiResponse;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "ApiResponse");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: ApiResponse;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "ApiResponse");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
diff --git a/samples/client/petstore/typescript-node/default/api/storeApi.ts b/samples/client/petstore/typescript-node/default/api/storeApi.ts
index 23f0fb73bfc5b1bb1f460f1930c0140f708ab4d0..cf3b545a3d04fd7c6b1e1a4b1510ea3a87b18448 100644
--- a/samples/client/petstore/typescript-node/default/api/storeApi.ts
+++ b/samples/client/petstore/typescript-node/default/api/storeApi.ts
@@ -102,26 +102,28 @@ export class StoreApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -148,29 +150,31 @@ export class StoreApi {
             json: true,
         };
 
-        this.authentications.api_key.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.api_key.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: { [key: string]: number; };  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "{ [key: string]: number; }");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: { [key: string]: number; };  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "{ [key: string]: number; }");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -204,27 +208,29 @@ export class StoreApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Order;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Order");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Order;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Order");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -258,27 +264,29 @@ export class StoreApi {
             body: ObjectSerializer.serialize(body, "Order")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Order;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Order");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Order;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Order");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
diff --git a/samples/client/petstore/typescript-node/default/api/userApi.ts b/samples/client/petstore/typescript-node/default/api/userApi.ts
index 5a7a179f04325efc837ff95984f43e4e5f6d60bb..374daf1f1bdffaa02aee649fc34c047260670446 100644
--- a/samples/client/petstore/typescript-node/default/api/userApi.ts
+++ b/samples/client/petstore/typescript-node/default/api/userApi.ts
@@ -99,26 +99,28 @@ export class UserApi {
             body: ObjectSerializer.serialize(body, "User")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -152,26 +154,28 @@ export class UserApi {
             body: ObjectSerializer.serialize(body, "Array<User>")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -205,26 +209,28 @@ export class UserApi {
             body: ObjectSerializer.serialize(body, "Array<User>")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -258,26 +264,28 @@ export class UserApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -311,27 +319,29 @@ export class UserApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: User;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "User");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: User;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "User");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -378,27 +388,29 @@ export class UserApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: string;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "string");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: string;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "string");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -425,26 +437,28 @@ export class UserApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -485,26 +499,28 @@ export class UserApi {
             body: ObjectSerializer.serialize(body, "User")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
diff --git a/samples/client/petstore/typescript-node/default/model/models.ts b/samples/client/petstore/typescript-node/default/model/models.ts
index 7b0dc89cbf78d46b083d1abe96ec92d5bd508355..73d5122442a0cf361f8787e8298360d47c507240 100644
--- a/samples/client/petstore/typescript-node/default/model/models.ts
+++ b/samples/client/petstore/typescript-node/default/model/models.ts
@@ -155,7 +155,7 @@ export interface Authentication {
     /**
     * Apply authentication settings to header and query params.
     */
-    applyToRequest(requestOptions: localVarRequest.Options): void;
+    applyToRequest(requestOptions: localVarRequest.Options): Promise<void> | void;
 }
 
 export class HttpBasicAuth implements Authentication {
diff --git a/samples/client/petstore/typescript-node/npm/api/petApi.ts b/samples/client/petstore/typescript-node/npm/api/petApi.ts
index c37458099cb131fd85cd76952c3b963af05dbcda..2566d2b935333cbc4affbbdb4e2caf72fdc56464 100644
--- a/samples/client/petstore/typescript-node/npm/api/petApi.ts
+++ b/samples/client/petstore/typescript-node/npm/api/petApi.ts
@@ -109,28 +109,30 @@ export class PetApi {
             body: ObjectSerializer.serialize(body, "Pet")
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
-
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
+
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -166,28 +168,30 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -224,29 +228,31 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Array<Pet>;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Array<Pet>");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Array<Pet>;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Array<Pet>");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -283,29 +289,31 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Array<Pet>;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Array<Pet>");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Array<Pet>;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Array<Pet>");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -339,29 +347,31 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.api_key.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.api_key.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Pet;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Pet");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Pet;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Pet");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -395,28 +405,30 @@ export class PetApi {
             body: ObjectSerializer.serialize(body, "Pet")
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -460,28 +472,30 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -526,29 +540,31 @@ export class PetApi {
             json: true,
         };
 
-        this.authentications.petstore_auth.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.petstore_auth.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: ApiResponse;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "ApiResponse");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: ApiResponse;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "ApiResponse");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
diff --git a/samples/client/petstore/typescript-node/npm/api/storeApi.ts b/samples/client/petstore/typescript-node/npm/api/storeApi.ts
index 23f0fb73bfc5b1bb1f460f1930c0140f708ab4d0..cf3b545a3d04fd7c6b1e1a4b1510ea3a87b18448 100644
--- a/samples/client/petstore/typescript-node/npm/api/storeApi.ts
+++ b/samples/client/petstore/typescript-node/npm/api/storeApi.ts
@@ -102,26 +102,28 @@ export class StoreApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -148,29 +150,31 @@ export class StoreApi {
             json: true,
         };
 
-        this.authentications.api_key.applyToRequest(localVarRequestOptions);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.api_key.applyToRequest(localVarRequestOptions));
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: { [key: string]: number; };  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "{ [key: string]: number; }");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: { [key: string]: number; };  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "{ [key: string]: number; }");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -204,27 +208,29 @@ export class StoreApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Order;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Order");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Order;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Order");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -258,27 +264,29 @@ export class StoreApi {
             body: ObjectSerializer.serialize(body, "Order")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: Order;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "Order");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: Order;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "Order");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
diff --git a/samples/client/petstore/typescript-node/npm/api/userApi.ts b/samples/client/petstore/typescript-node/npm/api/userApi.ts
index 5a7a179f04325efc837ff95984f43e4e5f6d60bb..374daf1f1bdffaa02aee649fc34c047260670446 100644
--- a/samples/client/petstore/typescript-node/npm/api/userApi.ts
+++ b/samples/client/petstore/typescript-node/npm/api/userApi.ts
@@ -99,26 +99,28 @@ export class UserApi {
             body: ObjectSerializer.serialize(body, "User")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -152,26 +154,28 @@ export class UserApi {
             body: ObjectSerializer.serialize(body, "Array<User>")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -205,26 +209,28 @@ export class UserApi {
             body: ObjectSerializer.serialize(body, "Array<User>")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -258,26 +264,28 @@ export class UserApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -311,27 +319,29 @@ export class UserApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: User;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "User");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: User;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "User");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -378,27 +388,29 @@ export class UserApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body: string;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    body = ObjectSerializer.deserialize(body, "string");
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body: string;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        body = ObjectSerializer.deserialize(body, "string");
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -425,26 +437,28 @@ export class UserApi {
             json: true,
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
@@ -485,26 +499,28 @@ export class UserApi {
             body: ObjectSerializer.serialize(body, "User")
         };
 
-        this.authentications.default.applyToRequest(localVarRequestOptions);
-
-        if (Object.keys(localVarFormParams).length) {
-            if (localVarUseFormData) {
-                (<any>localVarRequestOptions).formData = localVarFormParams;
-            } else {
-                localVarRequestOptions.form = localVarFormParams;
-            }
-        }
-        return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
-            localVarRequest(localVarRequestOptions, (error, response, body) => {
-                if (error) {
-                    reject(error);
+        let authenticationPromise = Promise.resolve();
+        authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
+        return authenticationPromise.then(() => {
+            if (Object.keys(localVarFormParams).length) {
+                if (localVarUseFormData) {
+                    (<any>localVarRequestOptions).formData = localVarFormParams;
                 } else {
-                    if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
-                        resolve({ response: response, body: body });
+                    localVarRequestOptions.form = localVarFormParams;
+                }
+            }
+            return new Promise<{ response: http.ClientResponse; body?: any;  }>((resolve, reject) => {
+                localVarRequest(localVarRequestOptions, (error, response, body) => {
+                    if (error) {
+                        reject(error);
                     } else {
-                        reject({ response: response, body: body });
+                        if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
+                            resolve({ response: response, body: body });
+                        } else {
+                            reject({ response: response, body: body });
+                        }
                     }
-                }
+                });
             });
         });
     }
diff --git a/samples/client/petstore/typescript-node/npm/model/models.ts b/samples/client/petstore/typescript-node/npm/model/models.ts
index 7b0dc89cbf78d46b083d1abe96ec92d5bd508355..73d5122442a0cf361f8787e8298360d47c507240 100644
--- a/samples/client/petstore/typescript-node/npm/model/models.ts
+++ b/samples/client/petstore/typescript-node/npm/model/models.ts
@@ -155,7 +155,7 @@ export interface Authentication {
     /**
     * Apply authentication settings to header and query params.
     */
-    applyToRequest(requestOptions: localVarRequest.Options): void;
+    applyToRequest(requestOptions: localVarRequest.Options): Promise<void> | void;
 }
 
 export class HttpBasicAuth implements Authentication {
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/apis/PetApi.ts b/samples/client/petstore/typescript-rxjs/builds/default/apis/PetApi.ts
index 8f8db90ce78ab76b3f504b4e365425dcd94f69e2..1d8a5f0011029e58d8dab7be993cdd8fe60701ad 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/apis/PetApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/apis/PetApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, HttpQuery, throwIfRequired, encodeURI, COLLECTION_FORMATS } from '../runtime';
 import {
     ApiResponse,
     Pet,
@@ -76,14 +76,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet`,
+            path: '/pet',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -104,14 +100,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'DELETE',
             headers,
-            query,
         });
     }
 
@@ -136,7 +128,7 @@ export class PetApi extends BaseAPI {
         };
 
         return this.request<Array<Pet>>({
-            path: `/pet/findByStatus`,
+            path: '/pet/findByStatus',
             method: 'GET',
             headers,
             query,
@@ -164,7 +156,7 @@ export class PetApi extends BaseAPI {
         };
 
         return this.request<Array<Pet>>({
-            path: `/pet/findByTags`,
+            path: '/pet/findByTags',
             method: 'GET',
             headers,
             query,
@@ -182,14 +174,10 @@ export class PetApi extends BaseAPI {
             ...(this.configuration.apiKey && { 'api_key': this.configuration.apiKey('api_key') }), // api_key authentication
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<Pet>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'GET',
             headers,
-            query,
         });
     }
 
@@ -209,14 +197,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet`,
+            path: '/pet',
             method: 'PUT',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -236,9 +220,6 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         const formData = new FormData();
         if (requestParameters.name !== undefined) {
             formData.append('name', requestParameters.name as any);
@@ -249,10 +230,9 @@ export class PetApi extends BaseAPI {
         }
 
         return this.request<void>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'POST',
             headers,
-            query,
             body: formData,
         });
     }
@@ -272,9 +252,6 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         const formData = new FormData();
         if (requestParameters.additionalMetadata !== undefined) {
             formData.append('additionalMetadata', requestParameters.additionalMetadata as any);
@@ -285,10 +262,9 @@ export class PetApi extends BaseAPI {
         }
 
         return this.request<ApiResponse>({
-            path: `/pet/{petId}/uploadImage`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}/uploadImage'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'POST',
             headers,
-            query,
             body: formData,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/apis/StoreApi.ts b/samples/client/petstore/typescript-rxjs/builds/default/apis/StoreApi.ts
index d7350a81516d53d03ead65ece7d28c83d570ef11..b3e038e8948128e9f49f97bf1ae45196181f5a96 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/apis/StoreApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/apis/StoreApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, throwIfRequired, encodeURI } from '../runtime';
 import {
     Order,
 } from '../models';
@@ -41,17 +41,9 @@ export class StoreApi extends BaseAPI {
     deleteOrder = (requestParameters: DeleteOrderRequest): Observable<void> => {
         throwIfRequired(requestParameters, 'orderId', 'deleteOrder');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/store/order/{orderId}`.replace(`{orderId}`, encodeURIComponent(String(requestParameters.orderId))),
+            path: '/store/order/{orderId}'.replace('{orderId}', encodeURI(requestParameters.orderId)),
             method: 'DELETE',
-            headers,
-            query,
         });
     }
 
@@ -60,19 +52,14 @@ export class StoreApi extends BaseAPI {
      * Returns pet inventories by status
      */
     getInventory = (): Observable<{ [key: string]: number; }> => {
-
         const headers: HttpHeaders = {
             ...(this.configuration.apiKey && { 'api_key': this.configuration.apiKey('api_key') }), // api_key authentication
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<{ [key: string]: number; }>({
-            path: `/store/inventory`,
+            path: '/store/inventory',
             method: 'GET',
             headers,
-            query,
         });
     }
 
@@ -83,17 +70,9 @@ export class StoreApi extends BaseAPI {
     getOrderById = (requestParameters: GetOrderByIdRequest): Observable<Order> => {
         throwIfRequired(requestParameters, 'orderId', 'getOrderById');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<Order>({
-            path: `/store/order/{orderId}`.replace(`{orderId}`, encodeURIComponent(String(requestParameters.orderId))),
+            path: '/store/order/{orderId}'.replace('{orderId}', encodeURI(requestParameters.orderId)),
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -107,14 +86,10 @@ export class StoreApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<Order>({
-            path: `/store/order`,
+            path: '/store/order',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/apis/UserApi.ts b/samples/client/petstore/typescript-rxjs/builds/default/apis/UserApi.ts
index 8b994caf6c8ee76dcfcf6c47ce05497ca003ddad..c356d96e91cd4ec09abdd3a2742d5fd7d738429c 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/apis/UserApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/apis/UserApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, HttpQuery, throwIfRequired, encodeURI } from '../runtime';
 import {
     User,
 } from '../models';
@@ -63,14 +63,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user`,
+            path: '/user',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -85,14 +81,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/createWithArray`,
+            path: '/user/createWithArray',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -107,14 +99,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/createWithList`,
+            path: '/user/createWithList',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -126,17 +114,9 @@ export class UserApi extends BaseAPI {
     deleteUser = (requestParameters: DeleteUserRequest): Observable<void> => {
         throwIfRequired(requestParameters, 'username', 'deleteUser');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'DELETE',
-            headers,
-            query,
         });
     }
 
@@ -146,17 +126,9 @@ export class UserApi extends BaseAPI {
     getUserByName = (requestParameters: GetUserByNameRequest): Observable<User> => {
         throwIfRequired(requestParameters, 'username', 'getUserByName');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<User>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -167,18 +139,14 @@ export class UserApi extends BaseAPI {
         throwIfRequired(requestParameters, 'username', 'loginUser');
         throwIfRequired(requestParameters, 'password', 'loginUser');
 
-        const headers: HttpHeaders = {
-        };
-
         const query: HttpQuery = {
             ...(requestParameters.username && { 'username': requestParameters.username }),
             ...(requestParameters.password && { 'password': requestParameters.password }),
         };
 
         return this.request<string>({
-            path: `/user/login`,
+            path: '/user/login',
             method: 'GET',
-            headers,
             query,
         });
     }
@@ -187,18 +155,9 @@ export class UserApi extends BaseAPI {
      * Logs out current logged in user session
      */
     logoutUser = (): Observable<void> => {
-
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/logout`,
+            path: '/user/logout',
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -214,14 +173,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'PUT',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/models/ApiResponse.ts b/samples/client/petstore/typescript-rxjs/builds/default/models/ApiResponse.ts
index c622c4e08392808cd9f1baa055d6bd9d7d52ba8d..942e4b992bf01115aec52fe65f8ebce188fb9207 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/models/ApiResponse.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/models/ApiResponse.ts
@@ -18,19 +18,16 @@
  */
 export interface ApiResponse {
     /**
-     * 
      * @type {number}
      * @memberof ApiResponse
      */
     code?: number;
     /**
-     * 
      * @type {string}
      * @memberof ApiResponse
      */
     type?: string;
     /**
-     * 
      * @type {string}
      * @memberof ApiResponse
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/models/Category.ts b/samples/client/petstore/typescript-rxjs/builds/default/models/Category.ts
index ca5f1029a95c4ad04683d9b7dc872bdfb08a6c89..4e1d3e51e2e34122430df681c7d73b81ca4763e8 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/models/Category.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/models/Category.ts
@@ -18,13 +18,11 @@
  */
 export interface Category {
     /**
-     * 
      * @type {number}
      * @memberof Category
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof Category
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/models/Order.ts b/samples/client/petstore/typescript-rxjs/builds/default/models/Order.ts
index f0a7d3ab91eaca39866a6282789a2860c44387dc..b2fb531cc1195de79e2c86408cf3116195e47f52 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/models/Order.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/models/Order.ts
@@ -18,25 +18,21 @@
  */
 export interface Order {
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     id?: number;
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     petId?: number;
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     quantity?: number;
     /**
-     * 
      * @type {Date}
      * @memberof Order
      */
@@ -48,7 +44,6 @@ export interface Order {
      */
     status?: OrderStatusEnum;
     /**
-     * 
      * @type {boolean}
      * @memberof Order
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/models/Pet.ts b/samples/client/petstore/typescript-rxjs/builds/default/models/Pet.ts
index b94dd769990bc06e8011e1107e6a9613e8e1ad50..972ae15fe06283da8088a6f36b9b274917539c73 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/models/Pet.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/models/Pet.ts
@@ -23,31 +23,26 @@ import {
  */
 export interface Pet {
     /**
-     * 
      * @type {number}
      * @memberof Pet
      */
     id?: number;
     /**
-     * 
      * @type {Category}
      * @memberof Pet
      */
     category?: Category;
     /**
-     * 
      * @type {string}
      * @memberof Pet
      */
     name: string;
     /**
-     * 
      * @type {Array<string>}
      * @memberof Pet
      */
     photoUrls: Array<string>;
     /**
-     * 
      * @type {Array<Tag>}
      * @memberof Pet
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/models/Tag.ts b/samples/client/petstore/typescript-rxjs/builds/default/models/Tag.ts
index b6f14119813fb038556cd39804f6878e331d8810..58792b18e6b8ee71780f08f7dd89a0babe6462c8 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/models/Tag.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/models/Tag.ts
@@ -18,13 +18,11 @@
  */
 export interface Tag {
     /**
-     * 
      * @type {number}
      * @memberof Tag
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof Tag
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/models/User.ts b/samples/client/petstore/typescript-rxjs/builds/default/models/User.ts
index 169976a49652331e05a163e3b4d8aa981c664085..a642d97bf8cdc11138cd264bd09084cd9c130f3a 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/models/User.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/models/User.ts
@@ -18,43 +18,36 @@
  */
 export interface User {
     /**
-     * 
      * @type {number}
      * @memberof User
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     username?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     firstName?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     lastName?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     email?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     password?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/default/runtime.ts b/samples/client/petstore/typescript-rxjs/builds/default/runtime.ts
index 25f845417a7a68119bfaf66dcc8fd4b56838f676..9b29b9be6797fe2114111a581ae6a9fb06e368ca 100644
--- a/samples/client/petstore/typescript-rxjs/builds/default/runtime.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/default/runtime.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable, of } from 'rxjs';
-import { ajax, AjaxResponse } from 'rxjs/ajax';
+import { ajax, AjaxRequest, AjaxResponse } from 'rxjs/ajax';
 import { map, concatMap } from 'rxjs/operators';
 
 export const BASE_PATH = 'http://petstore.swagger.io/v2'.replace(/\/+$/, '');
@@ -84,8 +84,8 @@ export class BaseAPI {
     withPostMiddleware = <T extends BaseAPI>(postMiddlewares: Array<Middleware['post']>) =>
         this.withMiddleware<T>(postMiddlewares.map((post) => ({ post })));
 
-    protected request = <T>(context: RequestOpts): Observable<T> => 
-        this.rxjsRequest(this.createRequestArgs(context)).pipe(
+    protected request = <T>(requestOpts: RequestOpts): Observable<T> => 
+        this.rxjsRequest(this.createRequestArgs(requestOpts)).pipe(
             map((res) => {
                 if (res.status >= 200 && res.status < 300) {
                     return res.response as T;
@@ -94,46 +94,38 @@ export class BaseAPI {
             })
         );
 
-    private createRequestArgs = (context: RequestOpts): RequestArgs => {
-        let url = this.configuration.basePath + context.path;
-        if (context.query !== undefined && Object.keys(context.query).length !== 0) {
+    private createRequestArgs = (requestOpts: RequestOpts): RequestArgs => {
+        let url = this.configuration.basePath + requestOpts.path;
+        if (requestOpts.query !== undefined && Object.keys(requestOpts.query).length !== 0) {
             // only add the queryString to the URL if there are query parameters.
             // this is done to avoid urls ending with a '?' character which buggy webservers
             // do not handle correctly sometimes.
-            url += '?' + queryString(context.query);
+            url += '?' + queryString(requestOpts.query);
         }
-        const body = context.body instanceof FormData ? context.body : JSON.stringify(context.body);
-        const options = {
-            method: context.method,
-            headers: context.headers,
-            body,
+        
+        return {
+            url,
+            method: requestOpts.method,
+            headers: requestOpts.headers,
+            body: requestOpts.body instanceof FormData ? requestOpts.body : JSON.stringify(requestOpts.body),
         };
-        return { url, options };
     }
 
-    private rxjsRequest = (params: RequestContext): Observable<AjaxResponse> => {
-        const preMiddlewares = this.middleware.filter((item) => item.pre);
-        const postMiddlewares = this.middleware.filter((item) => item.post);
-
-        return of(params).pipe(
-            map((args) => {
-                if (preMiddlewares) {
-                    preMiddlewares.forEach((mw) => (args = mw.pre!({ ...args })));
-                }
-                return args;
+    private rxjsRequest = (params: RequestArgs): Observable<AjaxResponse> => 
+        of(params).pipe(
+            map((request) => {
+                this.middleware.filter((item) => item.pre).forEach((mw) => (request = mw.pre!(request)));
+                return request;
             }),
             concatMap((args) =>
-                ajax({ url: args.url, ...args.options }).pipe(
+                ajax(args).pipe(
                     map((response) => {
-                        if (postMiddlewares) {
-                            postMiddlewares.forEach((mw) => (response = mw.post!({ ...params, response })));
-                        }
+                        this.middleware.filter((item) => item.post).forEach((mw) => (response = mw.post!(response)));
                         return response;
                     })
                 )
             )
         );
-    }
 
     /**
      * Create a shallow clone of `this` by constructing a new instance
@@ -162,27 +154,22 @@ export type HttpQuery = { [key: string]: string | number | null | boolean | Arra
 export type HttpBody = Json | FormData;
 export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original';
 
-export interface RequestArgs {
-    url: string;
-    options: RequestInit;
-}
-
 export interface RequestOpts {
     path: string;
     method: HttpMethod;
-    headers: HttpHeaders;
+    headers?: HttpHeaders;
     query?: HttpQuery;
     body?: HttpBody;
 }
 
+export const encodeURI = (value: any) => encodeURIComponent(String(value))
+
 const queryString = (params: HttpQuery): string => Object.keys(params)
     .map((key) => {
         const value = params[key];
-        if (value instanceof Array) {
-            return value.map((val) => `${encodeURIComponent(key)}=${encodeURIComponent(String(val))}`)
-                .join('&');
-        }
-        return `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`;
+        return (value instanceof Array)
+            ? value.map((val) => `${encodeURI(key)}=${encodeURI(val)}`).join('&')
+            : `${encodeURI(key)}=${encodeURI(value)}`;
     })
     .join('&');
 
@@ -195,12 +182,11 @@ export const throwIfRequired = (params: {[key: string]: any}, key: string, nickn
     }
 }
 
-export interface RequestContext extends RequestArgs {}
-export interface ResponseContext extends RequestArgs {
-    response: AjaxResponse;
-}
+// alias for easier importing
+export interface RequestArgs extends AjaxRequest {}
+export interface ResponseArgs extends AjaxResponse {}
 
 export interface Middleware {
-    pre?(context: RequestContext): RequestArgs;
-    post?(context: ResponseContext): AjaxResponse;
+    pre?(request: RequestArgs): RequestArgs;
+    post?(response: ResponseArgs): ResponseArgs;
 }
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/README.md b/samples/client/petstore/typescript-rxjs/builds/es6-target/README.md
index 44f4e2bc5bd611bf28829371adc89737dad4a7e2..2c35cd552d2270d0f901ea5072c42ddc1023f225 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/README.md
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/README.md
@@ -27,7 +27,7 @@ npm run build
 
 ### Publishing
 
-First build the package then run ```npm publish```
+First build the package then run `npm publish`
 
 ### Consuming
 
@@ -43,3 +43,45 @@ _unPublished (not recommended):_
 
 ```
 npm install PATH_TO_GENERATED_PACKAGE --save
+```
+
+### How to apply middleware
+
+First, add a singleton class that extends the generated `Configuration` class.
+
+```
+export class AuthInterceptor extends Configuration {
+  private static config: AuthInterceptor;
+
+  private constructor() {
+    const middleware: Middleware[] = [
+      {
+        pre(request: RequestArgs): RequestArgs {
+          const token = getAuthToken();
+
+          return {
+            ...request,
+            headers: {
+              ...request.headers,
+              Authorization: `Bearer ${token}`,
+            },
+          };
+        },
+      },
+    ];
+
+    super({ middleware });
+  }
+
+  public static get Instance() {
+    return AuthInterceptor.config || (AuthInterceptor.config = new this());
+  }
+}
+```
+
+Next, pass it to the generated api controller.
+
+```
+const api = new StoreApi(AuthInterceptor.Instance);
+
+```
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/PetApi.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/PetApi.ts
index 8f8db90ce78ab76b3f504b4e365425dcd94f69e2..1d8a5f0011029e58d8dab7be993cdd8fe60701ad 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/PetApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/PetApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, HttpQuery, throwIfRequired, encodeURI, COLLECTION_FORMATS } from '../runtime';
 import {
     ApiResponse,
     Pet,
@@ -76,14 +76,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet`,
+            path: '/pet',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -104,14 +100,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'DELETE',
             headers,
-            query,
         });
     }
 
@@ -136,7 +128,7 @@ export class PetApi extends BaseAPI {
         };
 
         return this.request<Array<Pet>>({
-            path: `/pet/findByStatus`,
+            path: '/pet/findByStatus',
             method: 'GET',
             headers,
             query,
@@ -164,7 +156,7 @@ export class PetApi extends BaseAPI {
         };
 
         return this.request<Array<Pet>>({
-            path: `/pet/findByTags`,
+            path: '/pet/findByTags',
             method: 'GET',
             headers,
             query,
@@ -182,14 +174,10 @@ export class PetApi extends BaseAPI {
             ...(this.configuration.apiKey && { 'api_key': this.configuration.apiKey('api_key') }), // api_key authentication
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<Pet>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'GET',
             headers,
-            query,
         });
     }
 
@@ -209,14 +197,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet`,
+            path: '/pet',
             method: 'PUT',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -236,9 +220,6 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         const formData = new FormData();
         if (requestParameters.name !== undefined) {
             formData.append('name', requestParameters.name as any);
@@ -249,10 +230,9 @@ export class PetApi extends BaseAPI {
         }
 
         return this.request<void>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'POST',
             headers,
-            query,
             body: formData,
         });
     }
@@ -272,9 +252,6 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         const formData = new FormData();
         if (requestParameters.additionalMetadata !== undefined) {
             formData.append('additionalMetadata', requestParameters.additionalMetadata as any);
@@ -285,10 +262,9 @@ export class PetApi extends BaseAPI {
         }
 
         return this.request<ApiResponse>({
-            path: `/pet/{petId}/uploadImage`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}/uploadImage'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'POST',
             headers,
-            query,
             body: formData,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/StoreApi.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/StoreApi.ts
index d7350a81516d53d03ead65ece7d28c83d570ef11..b3e038e8948128e9f49f97bf1ae45196181f5a96 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/StoreApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/StoreApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, throwIfRequired, encodeURI } from '../runtime';
 import {
     Order,
 } from '../models';
@@ -41,17 +41,9 @@ export class StoreApi extends BaseAPI {
     deleteOrder = (requestParameters: DeleteOrderRequest): Observable<void> => {
         throwIfRequired(requestParameters, 'orderId', 'deleteOrder');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/store/order/{orderId}`.replace(`{orderId}`, encodeURIComponent(String(requestParameters.orderId))),
+            path: '/store/order/{orderId}'.replace('{orderId}', encodeURI(requestParameters.orderId)),
             method: 'DELETE',
-            headers,
-            query,
         });
     }
 
@@ -60,19 +52,14 @@ export class StoreApi extends BaseAPI {
      * Returns pet inventories by status
      */
     getInventory = (): Observable<{ [key: string]: number; }> => {
-
         const headers: HttpHeaders = {
             ...(this.configuration.apiKey && { 'api_key': this.configuration.apiKey('api_key') }), // api_key authentication
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<{ [key: string]: number; }>({
-            path: `/store/inventory`,
+            path: '/store/inventory',
             method: 'GET',
             headers,
-            query,
         });
     }
 
@@ -83,17 +70,9 @@ export class StoreApi extends BaseAPI {
     getOrderById = (requestParameters: GetOrderByIdRequest): Observable<Order> => {
         throwIfRequired(requestParameters, 'orderId', 'getOrderById');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<Order>({
-            path: `/store/order/{orderId}`.replace(`{orderId}`, encodeURIComponent(String(requestParameters.orderId))),
+            path: '/store/order/{orderId}'.replace('{orderId}', encodeURI(requestParameters.orderId)),
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -107,14 +86,10 @@ export class StoreApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<Order>({
-            path: `/store/order`,
+            path: '/store/order',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/UserApi.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/UserApi.ts
index 8b994caf6c8ee76dcfcf6c47ce05497ca003ddad..c356d96e91cd4ec09abdd3a2742d5fd7d738429c 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/UserApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/apis/UserApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, HttpQuery, throwIfRequired, encodeURI } from '../runtime';
 import {
     User,
 } from '../models';
@@ -63,14 +63,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user`,
+            path: '/user',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -85,14 +81,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/createWithArray`,
+            path: '/user/createWithArray',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -107,14 +99,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/createWithList`,
+            path: '/user/createWithList',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -126,17 +114,9 @@ export class UserApi extends BaseAPI {
     deleteUser = (requestParameters: DeleteUserRequest): Observable<void> => {
         throwIfRequired(requestParameters, 'username', 'deleteUser');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'DELETE',
-            headers,
-            query,
         });
     }
 
@@ -146,17 +126,9 @@ export class UserApi extends BaseAPI {
     getUserByName = (requestParameters: GetUserByNameRequest): Observable<User> => {
         throwIfRequired(requestParameters, 'username', 'getUserByName');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<User>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -167,18 +139,14 @@ export class UserApi extends BaseAPI {
         throwIfRequired(requestParameters, 'username', 'loginUser');
         throwIfRequired(requestParameters, 'password', 'loginUser');
 
-        const headers: HttpHeaders = {
-        };
-
         const query: HttpQuery = {
             ...(requestParameters.username && { 'username': requestParameters.username }),
             ...(requestParameters.password && { 'password': requestParameters.password }),
         };
 
         return this.request<string>({
-            path: `/user/login`,
+            path: '/user/login',
             method: 'GET',
-            headers,
             query,
         });
     }
@@ -187,18 +155,9 @@ export class UserApi extends BaseAPI {
      * Logs out current logged in user session
      */
     logoutUser = (): Observable<void> => {
-
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/logout`,
+            path: '/user/logout',
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -214,14 +173,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'PUT',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/ApiResponse.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/ApiResponse.ts
index c622c4e08392808cd9f1baa055d6bd9d7d52ba8d..942e4b992bf01115aec52fe65f8ebce188fb9207 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/ApiResponse.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/ApiResponse.ts
@@ -18,19 +18,16 @@
  */
 export interface ApiResponse {
     /**
-     * 
      * @type {number}
      * @memberof ApiResponse
      */
     code?: number;
     /**
-     * 
      * @type {string}
      * @memberof ApiResponse
      */
     type?: string;
     /**
-     * 
      * @type {string}
      * @memberof ApiResponse
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Category.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Category.ts
index ca5f1029a95c4ad04683d9b7dc872bdfb08a6c89..4e1d3e51e2e34122430df681c7d73b81ca4763e8 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Category.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Category.ts
@@ -18,13 +18,11 @@
  */
 export interface Category {
     /**
-     * 
      * @type {number}
      * @memberof Category
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof Category
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Order.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Order.ts
index f0a7d3ab91eaca39866a6282789a2860c44387dc..b2fb531cc1195de79e2c86408cf3116195e47f52 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Order.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Order.ts
@@ -18,25 +18,21 @@
  */
 export interface Order {
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     id?: number;
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     petId?: number;
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     quantity?: number;
     /**
-     * 
      * @type {Date}
      * @memberof Order
      */
@@ -48,7 +44,6 @@ export interface Order {
      */
     status?: OrderStatusEnum;
     /**
-     * 
      * @type {boolean}
      * @memberof Order
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Pet.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Pet.ts
index b94dd769990bc06e8011e1107e6a9613e8e1ad50..972ae15fe06283da8088a6f36b9b274917539c73 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Pet.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Pet.ts
@@ -23,31 +23,26 @@ import {
  */
 export interface Pet {
     /**
-     * 
      * @type {number}
      * @memberof Pet
      */
     id?: number;
     /**
-     * 
      * @type {Category}
      * @memberof Pet
      */
     category?: Category;
     /**
-     * 
      * @type {string}
      * @memberof Pet
      */
     name: string;
     /**
-     * 
      * @type {Array<string>}
      * @memberof Pet
      */
     photoUrls: Array<string>;
     /**
-     * 
      * @type {Array<Tag>}
      * @memberof Pet
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Tag.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Tag.ts
index b6f14119813fb038556cd39804f6878e331d8810..58792b18e6b8ee71780f08f7dd89a0babe6462c8 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Tag.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/Tag.ts
@@ -18,13 +18,11 @@
  */
 export interface Tag {
     /**
-     * 
      * @type {number}
      * @memberof Tag
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof Tag
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/User.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/User.ts
index 169976a49652331e05a163e3b4d8aa981c664085..a642d97bf8cdc11138cd264bd09084cd9c130f3a 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/models/User.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/models/User.ts
@@ -18,43 +18,36 @@
  */
 export interface User {
     /**
-     * 
      * @type {number}
      * @memberof User
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     username?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     firstName?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     lastName?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     email?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     password?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/es6-target/runtime.ts b/samples/client/petstore/typescript-rxjs/builds/es6-target/runtime.ts
index 25f845417a7a68119bfaf66dcc8fd4b56838f676..9b29b9be6797fe2114111a581ae6a9fb06e368ca 100644
--- a/samples/client/petstore/typescript-rxjs/builds/es6-target/runtime.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/es6-target/runtime.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable, of } from 'rxjs';
-import { ajax, AjaxResponse } from 'rxjs/ajax';
+import { ajax, AjaxRequest, AjaxResponse } from 'rxjs/ajax';
 import { map, concatMap } from 'rxjs/operators';
 
 export const BASE_PATH = 'http://petstore.swagger.io/v2'.replace(/\/+$/, '');
@@ -84,8 +84,8 @@ export class BaseAPI {
     withPostMiddleware = <T extends BaseAPI>(postMiddlewares: Array<Middleware['post']>) =>
         this.withMiddleware<T>(postMiddlewares.map((post) => ({ post })));
 
-    protected request = <T>(context: RequestOpts): Observable<T> => 
-        this.rxjsRequest(this.createRequestArgs(context)).pipe(
+    protected request = <T>(requestOpts: RequestOpts): Observable<T> => 
+        this.rxjsRequest(this.createRequestArgs(requestOpts)).pipe(
             map((res) => {
                 if (res.status >= 200 && res.status < 300) {
                     return res.response as T;
@@ -94,46 +94,38 @@ export class BaseAPI {
             })
         );
 
-    private createRequestArgs = (context: RequestOpts): RequestArgs => {
-        let url = this.configuration.basePath + context.path;
-        if (context.query !== undefined && Object.keys(context.query).length !== 0) {
+    private createRequestArgs = (requestOpts: RequestOpts): RequestArgs => {
+        let url = this.configuration.basePath + requestOpts.path;
+        if (requestOpts.query !== undefined && Object.keys(requestOpts.query).length !== 0) {
             // only add the queryString to the URL if there are query parameters.
             // this is done to avoid urls ending with a '?' character which buggy webservers
             // do not handle correctly sometimes.
-            url += '?' + queryString(context.query);
+            url += '?' + queryString(requestOpts.query);
         }
-        const body = context.body instanceof FormData ? context.body : JSON.stringify(context.body);
-        const options = {
-            method: context.method,
-            headers: context.headers,
-            body,
+        
+        return {
+            url,
+            method: requestOpts.method,
+            headers: requestOpts.headers,
+            body: requestOpts.body instanceof FormData ? requestOpts.body : JSON.stringify(requestOpts.body),
         };
-        return { url, options };
     }
 
-    private rxjsRequest = (params: RequestContext): Observable<AjaxResponse> => {
-        const preMiddlewares = this.middleware.filter((item) => item.pre);
-        const postMiddlewares = this.middleware.filter((item) => item.post);
-
-        return of(params).pipe(
-            map((args) => {
-                if (preMiddlewares) {
-                    preMiddlewares.forEach((mw) => (args = mw.pre!({ ...args })));
-                }
-                return args;
+    private rxjsRequest = (params: RequestArgs): Observable<AjaxResponse> => 
+        of(params).pipe(
+            map((request) => {
+                this.middleware.filter((item) => item.pre).forEach((mw) => (request = mw.pre!(request)));
+                return request;
             }),
             concatMap((args) =>
-                ajax({ url: args.url, ...args.options }).pipe(
+                ajax(args).pipe(
                     map((response) => {
-                        if (postMiddlewares) {
-                            postMiddlewares.forEach((mw) => (response = mw.post!({ ...params, response })));
-                        }
+                        this.middleware.filter((item) => item.post).forEach((mw) => (response = mw.post!(response)));
                         return response;
                     })
                 )
             )
         );
-    }
 
     /**
      * Create a shallow clone of `this` by constructing a new instance
@@ -162,27 +154,22 @@ export type HttpQuery = { [key: string]: string | number | null | boolean | Arra
 export type HttpBody = Json | FormData;
 export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original';
 
-export interface RequestArgs {
-    url: string;
-    options: RequestInit;
-}
-
 export interface RequestOpts {
     path: string;
     method: HttpMethod;
-    headers: HttpHeaders;
+    headers?: HttpHeaders;
     query?: HttpQuery;
     body?: HttpBody;
 }
 
+export const encodeURI = (value: any) => encodeURIComponent(String(value))
+
 const queryString = (params: HttpQuery): string => Object.keys(params)
     .map((key) => {
         const value = params[key];
-        if (value instanceof Array) {
-            return value.map((val) => `${encodeURIComponent(key)}=${encodeURIComponent(String(val))}`)
-                .join('&');
-        }
-        return `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`;
+        return (value instanceof Array)
+            ? value.map((val) => `${encodeURI(key)}=${encodeURI(val)}`).join('&')
+            : `${encodeURI(key)}=${encodeURI(value)}`;
     })
     .join('&');
 
@@ -195,12 +182,11 @@ export const throwIfRequired = (params: {[key: string]: any}, key: string, nickn
     }
 }
 
-export interface RequestContext extends RequestArgs {}
-export interface ResponseContext extends RequestArgs {
-    response: AjaxResponse;
-}
+// alias for easier importing
+export interface RequestArgs extends AjaxRequest {}
+export interface ResponseArgs extends AjaxResponse {}
 
 export interface Middleware {
-    pre?(context: RequestContext): RequestArgs;
-    post?(context: ResponseContext): AjaxResponse;
+    pre?(request: RequestArgs): RequestArgs;
+    post?(response: ResponseArgs): ResponseArgs;
 }
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/PetApi.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/PetApi.ts
index 8f8db90ce78ab76b3f504b4e365425dcd94f69e2..1d8a5f0011029e58d8dab7be993cdd8fe60701ad 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/PetApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/PetApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, HttpQuery, throwIfRequired, encodeURI, COLLECTION_FORMATS } from '../runtime';
 import {
     ApiResponse,
     Pet,
@@ -76,14 +76,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet`,
+            path: '/pet',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -104,14 +100,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'DELETE',
             headers,
-            query,
         });
     }
 
@@ -136,7 +128,7 @@ export class PetApi extends BaseAPI {
         };
 
         return this.request<Array<Pet>>({
-            path: `/pet/findByStatus`,
+            path: '/pet/findByStatus',
             method: 'GET',
             headers,
             query,
@@ -164,7 +156,7 @@ export class PetApi extends BaseAPI {
         };
 
         return this.request<Array<Pet>>({
-            path: `/pet/findByTags`,
+            path: '/pet/findByTags',
             method: 'GET',
             headers,
             query,
@@ -182,14 +174,10 @@ export class PetApi extends BaseAPI {
             ...(this.configuration.apiKey && { 'api_key': this.configuration.apiKey('api_key') }), // api_key authentication
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<Pet>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'GET',
             headers,
-            query,
         });
     }
 
@@ -209,14 +197,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet`,
+            path: '/pet',
             method: 'PUT',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -236,9 +220,6 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         const formData = new FormData();
         if (requestParameters.name !== undefined) {
             formData.append('name', requestParameters.name as any);
@@ -249,10 +230,9 @@ export class PetApi extends BaseAPI {
         }
 
         return this.request<void>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'POST',
             headers,
-            query,
             body: formData,
         });
     }
@@ -272,9 +252,6 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         const formData = new FormData();
         if (requestParameters.additionalMetadata !== undefined) {
             formData.append('additionalMetadata', requestParameters.additionalMetadata as any);
@@ -285,10 +262,9 @@ export class PetApi extends BaseAPI {
         }
 
         return this.request<ApiResponse>({
-            path: `/pet/{petId}/uploadImage`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}/uploadImage'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'POST',
             headers,
-            query,
             body: formData,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/StoreApi.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/StoreApi.ts
index d7350a81516d53d03ead65ece7d28c83d570ef11..b3e038e8948128e9f49f97bf1ae45196181f5a96 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/StoreApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/StoreApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, throwIfRequired, encodeURI } from '../runtime';
 import {
     Order,
 } from '../models';
@@ -41,17 +41,9 @@ export class StoreApi extends BaseAPI {
     deleteOrder = (requestParameters: DeleteOrderRequest): Observable<void> => {
         throwIfRequired(requestParameters, 'orderId', 'deleteOrder');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/store/order/{orderId}`.replace(`{orderId}`, encodeURIComponent(String(requestParameters.orderId))),
+            path: '/store/order/{orderId}'.replace('{orderId}', encodeURI(requestParameters.orderId)),
             method: 'DELETE',
-            headers,
-            query,
         });
     }
 
@@ -60,19 +52,14 @@ export class StoreApi extends BaseAPI {
      * Returns pet inventories by status
      */
     getInventory = (): Observable<{ [key: string]: number; }> => {
-
         const headers: HttpHeaders = {
             ...(this.configuration.apiKey && { 'api_key': this.configuration.apiKey('api_key') }), // api_key authentication
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<{ [key: string]: number; }>({
-            path: `/store/inventory`,
+            path: '/store/inventory',
             method: 'GET',
             headers,
-            query,
         });
     }
 
@@ -83,17 +70,9 @@ export class StoreApi extends BaseAPI {
     getOrderById = (requestParameters: GetOrderByIdRequest): Observable<Order> => {
         throwIfRequired(requestParameters, 'orderId', 'getOrderById');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<Order>({
-            path: `/store/order/{orderId}`.replace(`{orderId}`, encodeURIComponent(String(requestParameters.orderId))),
+            path: '/store/order/{orderId}'.replace('{orderId}', encodeURI(requestParameters.orderId)),
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -107,14 +86,10 @@ export class StoreApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<Order>({
-            path: `/store/order`,
+            path: '/store/order',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/UserApi.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/UserApi.ts
index 8b994caf6c8ee76dcfcf6c47ce05497ca003ddad..c356d96e91cd4ec09abdd3a2742d5fd7d738429c 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/UserApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/apis/UserApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, HttpQuery, throwIfRequired, encodeURI } from '../runtime';
 import {
     User,
 } from '../models';
@@ -63,14 +63,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user`,
+            path: '/user',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -85,14 +81,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/createWithArray`,
+            path: '/user/createWithArray',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -107,14 +99,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/createWithList`,
+            path: '/user/createWithList',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -126,17 +114,9 @@ export class UserApi extends BaseAPI {
     deleteUser = (requestParameters: DeleteUserRequest): Observable<void> => {
         throwIfRequired(requestParameters, 'username', 'deleteUser');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'DELETE',
-            headers,
-            query,
         });
     }
 
@@ -146,17 +126,9 @@ export class UserApi extends BaseAPI {
     getUserByName = (requestParameters: GetUserByNameRequest): Observable<User> => {
         throwIfRequired(requestParameters, 'username', 'getUserByName');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<User>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -167,18 +139,14 @@ export class UserApi extends BaseAPI {
         throwIfRequired(requestParameters, 'username', 'loginUser');
         throwIfRequired(requestParameters, 'password', 'loginUser');
 
-        const headers: HttpHeaders = {
-        };
-
         const query: HttpQuery = {
             ...(requestParameters.username && { 'username': requestParameters.username }),
             ...(requestParameters.password && { 'password': requestParameters.password }),
         };
 
         return this.request<string>({
-            path: `/user/login`,
+            path: '/user/login',
             method: 'GET',
-            headers,
             query,
         });
     }
@@ -187,18 +155,9 @@ export class UserApi extends BaseAPI {
      * Logs out current logged in user session
      */
     logoutUser = (): Observable<void> => {
-
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/logout`,
+            path: '/user/logout',
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -214,14 +173,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'PUT',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/ApiResponse.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/ApiResponse.ts
index c622c4e08392808cd9f1baa055d6bd9d7d52ba8d..942e4b992bf01115aec52fe65f8ebce188fb9207 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/ApiResponse.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/ApiResponse.ts
@@ -18,19 +18,16 @@
  */
 export interface ApiResponse {
     /**
-     * 
      * @type {number}
      * @memberof ApiResponse
      */
     code?: number;
     /**
-     * 
      * @type {string}
      * @memberof ApiResponse
      */
     type?: string;
     /**
-     * 
      * @type {string}
      * @memberof ApiResponse
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Category.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Category.ts
index ca5f1029a95c4ad04683d9b7dc872bdfb08a6c89..4e1d3e51e2e34122430df681c7d73b81ca4763e8 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Category.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Category.ts
@@ -18,13 +18,11 @@
  */
 export interface Category {
     /**
-     * 
      * @type {number}
      * @memberof Category
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof Category
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Order.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Order.ts
index f0a7d3ab91eaca39866a6282789a2860c44387dc..b2fb531cc1195de79e2c86408cf3116195e47f52 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Order.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Order.ts
@@ -18,25 +18,21 @@
  */
 export interface Order {
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     id?: number;
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     petId?: number;
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     quantity?: number;
     /**
-     * 
      * @type {Date}
      * @memberof Order
      */
@@ -48,7 +44,6 @@ export interface Order {
      */
     status?: OrderStatusEnum;
     /**
-     * 
      * @type {boolean}
      * @memberof Order
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Pet.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Pet.ts
index b94dd769990bc06e8011e1107e6a9613e8e1ad50..972ae15fe06283da8088a6f36b9b274917539c73 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Pet.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Pet.ts
@@ -23,31 +23,26 @@ import {
  */
 export interface Pet {
     /**
-     * 
      * @type {number}
      * @memberof Pet
      */
     id?: number;
     /**
-     * 
      * @type {Category}
      * @memberof Pet
      */
     category?: Category;
     /**
-     * 
      * @type {string}
      * @memberof Pet
      */
     name: string;
     /**
-     * 
      * @type {Array<string>}
      * @memberof Pet
      */
     photoUrls: Array<string>;
     /**
-     * 
      * @type {Array<Tag>}
      * @memberof Pet
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Tag.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Tag.ts
index b6f14119813fb038556cd39804f6878e331d8810..58792b18e6b8ee71780f08f7dd89a0babe6462c8 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Tag.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/Tag.ts
@@ -18,13 +18,11 @@
  */
 export interface Tag {
     /**
-     * 
      * @type {number}
      * @memberof Tag
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof Tag
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/User.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/User.ts
index 169976a49652331e05a163e3b4d8aa981c664085..a642d97bf8cdc11138cd264bd09084cd9c130f3a 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/User.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/models/User.ts
@@ -18,43 +18,36 @@
  */
 export interface User {
     /**
-     * 
      * @type {number}
      * @memberof User
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     username?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     firstName?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     lastName?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     email?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     password?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/runtime.ts b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/runtime.ts
index 25f845417a7a68119bfaf66dcc8fd4b56838f676..9b29b9be6797fe2114111a581ae6a9fb06e368ca 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-interfaces/runtime.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-interfaces/runtime.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable, of } from 'rxjs';
-import { ajax, AjaxResponse } from 'rxjs/ajax';
+import { ajax, AjaxRequest, AjaxResponse } from 'rxjs/ajax';
 import { map, concatMap } from 'rxjs/operators';
 
 export const BASE_PATH = 'http://petstore.swagger.io/v2'.replace(/\/+$/, '');
@@ -84,8 +84,8 @@ export class BaseAPI {
     withPostMiddleware = <T extends BaseAPI>(postMiddlewares: Array<Middleware['post']>) =>
         this.withMiddleware<T>(postMiddlewares.map((post) => ({ post })));
 
-    protected request = <T>(context: RequestOpts): Observable<T> => 
-        this.rxjsRequest(this.createRequestArgs(context)).pipe(
+    protected request = <T>(requestOpts: RequestOpts): Observable<T> => 
+        this.rxjsRequest(this.createRequestArgs(requestOpts)).pipe(
             map((res) => {
                 if (res.status >= 200 && res.status < 300) {
                     return res.response as T;
@@ -94,46 +94,38 @@ export class BaseAPI {
             })
         );
 
-    private createRequestArgs = (context: RequestOpts): RequestArgs => {
-        let url = this.configuration.basePath + context.path;
-        if (context.query !== undefined && Object.keys(context.query).length !== 0) {
+    private createRequestArgs = (requestOpts: RequestOpts): RequestArgs => {
+        let url = this.configuration.basePath + requestOpts.path;
+        if (requestOpts.query !== undefined && Object.keys(requestOpts.query).length !== 0) {
             // only add the queryString to the URL if there are query parameters.
             // this is done to avoid urls ending with a '?' character which buggy webservers
             // do not handle correctly sometimes.
-            url += '?' + queryString(context.query);
+            url += '?' + queryString(requestOpts.query);
         }
-        const body = context.body instanceof FormData ? context.body : JSON.stringify(context.body);
-        const options = {
-            method: context.method,
-            headers: context.headers,
-            body,
+        
+        return {
+            url,
+            method: requestOpts.method,
+            headers: requestOpts.headers,
+            body: requestOpts.body instanceof FormData ? requestOpts.body : JSON.stringify(requestOpts.body),
         };
-        return { url, options };
     }
 
-    private rxjsRequest = (params: RequestContext): Observable<AjaxResponse> => {
-        const preMiddlewares = this.middleware.filter((item) => item.pre);
-        const postMiddlewares = this.middleware.filter((item) => item.post);
-
-        return of(params).pipe(
-            map((args) => {
-                if (preMiddlewares) {
-                    preMiddlewares.forEach((mw) => (args = mw.pre!({ ...args })));
-                }
-                return args;
+    private rxjsRequest = (params: RequestArgs): Observable<AjaxResponse> => 
+        of(params).pipe(
+            map((request) => {
+                this.middleware.filter((item) => item.pre).forEach((mw) => (request = mw.pre!(request)));
+                return request;
             }),
             concatMap((args) =>
-                ajax({ url: args.url, ...args.options }).pipe(
+                ajax(args).pipe(
                     map((response) => {
-                        if (postMiddlewares) {
-                            postMiddlewares.forEach((mw) => (response = mw.post!({ ...params, response })));
-                        }
+                        this.middleware.filter((item) => item.post).forEach((mw) => (response = mw.post!(response)));
                         return response;
                     })
                 )
             )
         );
-    }
 
     /**
      * Create a shallow clone of `this` by constructing a new instance
@@ -162,27 +154,22 @@ export type HttpQuery = { [key: string]: string | number | null | boolean | Arra
 export type HttpBody = Json | FormData;
 export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original';
 
-export interface RequestArgs {
-    url: string;
-    options: RequestInit;
-}
-
 export interface RequestOpts {
     path: string;
     method: HttpMethod;
-    headers: HttpHeaders;
+    headers?: HttpHeaders;
     query?: HttpQuery;
     body?: HttpBody;
 }
 
+export const encodeURI = (value: any) => encodeURIComponent(String(value))
+
 const queryString = (params: HttpQuery): string => Object.keys(params)
     .map((key) => {
         const value = params[key];
-        if (value instanceof Array) {
-            return value.map((val) => `${encodeURIComponent(key)}=${encodeURIComponent(String(val))}`)
-                .join('&');
-        }
-        return `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`;
+        return (value instanceof Array)
+            ? value.map((val) => `${encodeURI(key)}=${encodeURI(val)}`).join('&')
+            : `${encodeURI(key)}=${encodeURI(value)}`;
     })
     .join('&');
 
@@ -195,12 +182,11 @@ export const throwIfRequired = (params: {[key: string]: any}, key: string, nickn
     }
 }
 
-export interface RequestContext extends RequestArgs {}
-export interface ResponseContext extends RequestArgs {
-    response: AjaxResponse;
-}
+// alias for easier importing
+export interface RequestArgs extends AjaxRequest {}
+export interface ResponseArgs extends AjaxResponse {}
 
 export interface Middleware {
-    pre?(context: RequestContext): RequestArgs;
-    post?(context: ResponseContext): AjaxResponse;
+    pre?(request: RequestArgs): RequestArgs;
+    post?(response: ResponseArgs): ResponseArgs;
 }
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/README.md b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/README.md
index 44f4e2bc5bd611bf28829371adc89737dad4a7e2..2c35cd552d2270d0f901ea5072c42ddc1023f225 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/README.md
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/README.md
@@ -27,7 +27,7 @@ npm run build
 
 ### Publishing
 
-First build the package then run ```npm publish```
+First build the package then run `npm publish`
 
 ### Consuming
 
@@ -43,3 +43,45 @@ _unPublished (not recommended):_
 
 ```
 npm install PATH_TO_GENERATED_PACKAGE --save
+```
+
+### How to apply middleware
+
+First, add a singleton class that extends the generated `Configuration` class.
+
+```
+export class AuthInterceptor extends Configuration {
+  private static config: AuthInterceptor;
+
+  private constructor() {
+    const middleware: Middleware[] = [
+      {
+        pre(request: RequestArgs): RequestArgs {
+          const token = getAuthToken();
+
+          return {
+            ...request,
+            headers: {
+              ...request.headers,
+              Authorization: `Bearer ${token}`,
+            },
+          };
+        },
+      },
+    ];
+
+    super({ middleware });
+  }
+
+  public static get Instance() {
+    return AuthInterceptor.config || (AuthInterceptor.config = new this());
+  }
+}
+```
+
+Next, pass it to the generated api controller.
+
+```
+const api = new StoreApi(AuthInterceptor.Instance);
+
+```
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/PetApi.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/PetApi.ts
index 8f8db90ce78ab76b3f504b4e365425dcd94f69e2..1d8a5f0011029e58d8dab7be993cdd8fe60701ad 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/PetApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/PetApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, HttpQuery, throwIfRequired, encodeURI, COLLECTION_FORMATS } from '../runtime';
 import {
     ApiResponse,
     Pet,
@@ -76,14 +76,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet`,
+            path: '/pet',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -104,14 +100,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'DELETE',
             headers,
-            query,
         });
     }
 
@@ -136,7 +128,7 @@ export class PetApi extends BaseAPI {
         };
 
         return this.request<Array<Pet>>({
-            path: `/pet/findByStatus`,
+            path: '/pet/findByStatus',
             method: 'GET',
             headers,
             query,
@@ -164,7 +156,7 @@ export class PetApi extends BaseAPI {
         };
 
         return this.request<Array<Pet>>({
-            path: `/pet/findByTags`,
+            path: '/pet/findByTags',
             method: 'GET',
             headers,
             query,
@@ -182,14 +174,10 @@ export class PetApi extends BaseAPI {
             ...(this.configuration.apiKey && { 'api_key': this.configuration.apiKey('api_key') }), // api_key authentication
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<Pet>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'GET',
             headers,
-            query,
         });
     }
 
@@ -209,14 +197,10 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/pet`,
+            path: '/pet',
             method: 'PUT',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -236,9 +220,6 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         const formData = new FormData();
         if (requestParameters.name !== undefined) {
             formData.append('name', requestParameters.name as any);
@@ -249,10 +230,9 @@ export class PetApi extends BaseAPI {
         }
 
         return this.request<void>({
-            path: `/pet/{petId}`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'POST',
             headers,
-            query,
             body: formData,
         });
     }
@@ -272,9 +252,6 @@ export class PetApi extends BaseAPI {
             }),
         };
 
-        const query: HttpQuery = {
-        };
-
         const formData = new FormData();
         if (requestParameters.additionalMetadata !== undefined) {
             formData.append('additionalMetadata', requestParameters.additionalMetadata as any);
@@ -285,10 +262,9 @@ export class PetApi extends BaseAPI {
         }
 
         return this.request<ApiResponse>({
-            path: `/pet/{petId}/uploadImage`.replace(`{petId}`, encodeURIComponent(String(requestParameters.petId))),
+            path: '/pet/{petId}/uploadImage'.replace('{petId}', encodeURI(requestParameters.petId)),
             method: 'POST',
             headers,
-            query,
             body: formData,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/StoreApi.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/StoreApi.ts
index d7350a81516d53d03ead65ece7d28c83d570ef11..b3e038e8948128e9f49f97bf1ae45196181f5a96 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/StoreApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/StoreApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, throwIfRequired, encodeURI } from '../runtime';
 import {
     Order,
 } from '../models';
@@ -41,17 +41,9 @@ export class StoreApi extends BaseAPI {
     deleteOrder = (requestParameters: DeleteOrderRequest): Observable<void> => {
         throwIfRequired(requestParameters, 'orderId', 'deleteOrder');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/store/order/{orderId}`.replace(`{orderId}`, encodeURIComponent(String(requestParameters.orderId))),
+            path: '/store/order/{orderId}'.replace('{orderId}', encodeURI(requestParameters.orderId)),
             method: 'DELETE',
-            headers,
-            query,
         });
     }
 
@@ -60,19 +52,14 @@ export class StoreApi extends BaseAPI {
      * Returns pet inventories by status
      */
     getInventory = (): Observable<{ [key: string]: number; }> => {
-
         const headers: HttpHeaders = {
             ...(this.configuration.apiKey && { 'api_key': this.configuration.apiKey('api_key') }), // api_key authentication
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<{ [key: string]: number; }>({
-            path: `/store/inventory`,
+            path: '/store/inventory',
             method: 'GET',
             headers,
-            query,
         });
     }
 
@@ -83,17 +70,9 @@ export class StoreApi extends BaseAPI {
     getOrderById = (requestParameters: GetOrderByIdRequest): Observable<Order> => {
         throwIfRequired(requestParameters, 'orderId', 'getOrderById');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<Order>({
-            path: `/store/order/{orderId}`.replace(`{orderId}`, encodeURIComponent(String(requestParameters.orderId))),
+            path: '/store/order/{orderId}'.replace('{orderId}', encodeURI(requestParameters.orderId)),
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -107,14 +86,10 @@ export class StoreApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<Order>({
-            path: `/store/order`,
+            path: '/store/order',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/UserApi.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/UserApi.ts
index 8b994caf6c8ee76dcfcf6c47ce05497ca003ddad..c356d96e91cd4ec09abdd3a2742d5fd7d738429c 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/UserApi.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/apis/UserApi.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable } from 'rxjs';
-import { BaseAPI, throwIfRequired, HttpHeaders, HttpQuery, COLLECTION_FORMATS } from '../runtime';
+import { BaseAPI, HttpHeaders, HttpQuery, throwIfRequired, encodeURI } from '../runtime';
 import {
     User,
 } from '../models';
@@ -63,14 +63,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user`,
+            path: '/user',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -85,14 +81,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/createWithArray`,
+            path: '/user/createWithArray',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -107,14 +99,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/createWithList`,
+            path: '/user/createWithList',
             method: 'POST',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
@@ -126,17 +114,9 @@ export class UserApi extends BaseAPI {
     deleteUser = (requestParameters: DeleteUserRequest): Observable<void> => {
         throwIfRequired(requestParameters, 'username', 'deleteUser');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'DELETE',
-            headers,
-            query,
         });
     }
 
@@ -146,17 +126,9 @@ export class UserApi extends BaseAPI {
     getUserByName = (requestParameters: GetUserByNameRequest): Observable<User> => {
         throwIfRequired(requestParameters, 'username', 'getUserByName');
 
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<User>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -167,18 +139,14 @@ export class UserApi extends BaseAPI {
         throwIfRequired(requestParameters, 'username', 'loginUser');
         throwIfRequired(requestParameters, 'password', 'loginUser');
 
-        const headers: HttpHeaders = {
-        };
-
         const query: HttpQuery = {
             ...(requestParameters.username && { 'username': requestParameters.username }),
             ...(requestParameters.password && { 'password': requestParameters.password }),
         };
 
         return this.request<string>({
-            path: `/user/login`,
+            path: '/user/login',
             method: 'GET',
-            headers,
             query,
         });
     }
@@ -187,18 +155,9 @@ export class UserApi extends BaseAPI {
      * Logs out current logged in user session
      */
     logoutUser = (): Observable<void> => {
-
-        const headers: HttpHeaders = {
-        };
-
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/logout`,
+            path: '/user/logout',
             method: 'GET',
-            headers,
-            query,
         });
     }
 
@@ -214,14 +173,10 @@ export class UserApi extends BaseAPI {
             'Content-Type': 'application/json',
         };
 
-        const query: HttpQuery = {
-        };
-
         return this.request<void>({
-            path: `/user/{username}`.replace(`{username}`, encodeURIComponent(String(requestParameters.username))),
+            path: '/user/{username}'.replace('{username}', encodeURI(requestParameters.username)),
             method: 'PUT',
             headers,
-            query,
             body: requestParameters.body,
         });
     }
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/ApiResponse.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/ApiResponse.ts
index c622c4e08392808cd9f1baa055d6bd9d7d52ba8d..942e4b992bf01115aec52fe65f8ebce188fb9207 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/ApiResponse.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/ApiResponse.ts
@@ -18,19 +18,16 @@
  */
 export interface ApiResponse {
     /**
-     * 
      * @type {number}
      * @memberof ApiResponse
      */
     code?: number;
     /**
-     * 
      * @type {string}
      * @memberof ApiResponse
      */
     type?: string;
     /**
-     * 
      * @type {string}
      * @memberof ApiResponse
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Category.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Category.ts
index ca5f1029a95c4ad04683d9b7dc872bdfb08a6c89..4e1d3e51e2e34122430df681c7d73b81ca4763e8 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Category.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Category.ts
@@ -18,13 +18,11 @@
  */
 export interface Category {
     /**
-     * 
      * @type {number}
      * @memberof Category
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof Category
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Order.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Order.ts
index f0a7d3ab91eaca39866a6282789a2860c44387dc..b2fb531cc1195de79e2c86408cf3116195e47f52 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Order.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Order.ts
@@ -18,25 +18,21 @@
  */
 export interface Order {
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     id?: number;
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     petId?: number;
     /**
-     * 
      * @type {number}
      * @memberof Order
      */
     quantity?: number;
     /**
-     * 
      * @type {Date}
      * @memberof Order
      */
@@ -48,7 +44,6 @@ export interface Order {
      */
     status?: OrderStatusEnum;
     /**
-     * 
      * @type {boolean}
      * @memberof Order
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Pet.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Pet.ts
index b94dd769990bc06e8011e1107e6a9613e8e1ad50..972ae15fe06283da8088a6f36b9b274917539c73 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Pet.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Pet.ts
@@ -23,31 +23,26 @@ import {
  */
 export interface Pet {
     /**
-     * 
      * @type {number}
      * @memberof Pet
      */
     id?: number;
     /**
-     * 
      * @type {Category}
      * @memberof Pet
      */
     category?: Category;
     /**
-     * 
      * @type {string}
      * @memberof Pet
      */
     name: string;
     /**
-     * 
      * @type {Array<string>}
      * @memberof Pet
      */
     photoUrls: Array<string>;
     /**
-     * 
      * @type {Array<Tag>}
      * @memberof Pet
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Tag.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Tag.ts
index b6f14119813fb038556cd39804f6878e331d8810..58792b18e6b8ee71780f08f7dd89a0babe6462c8 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Tag.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/Tag.ts
@@ -18,13 +18,11 @@
  */
 export interface Tag {
     /**
-     * 
      * @type {number}
      * @memberof Tag
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof Tag
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/User.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/User.ts
index 169976a49652331e05a163e3b4d8aa981c664085..a642d97bf8cdc11138cd264bd09084cd9c130f3a 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/User.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/models/User.ts
@@ -18,43 +18,36 @@
  */
 export interface User {
     /**
-     * 
      * @type {number}
      * @memberof User
      */
     id?: number;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     username?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     firstName?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     lastName?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     email?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
     password?: string;
     /**
-     * 
      * @type {string}
      * @memberof User
      */
diff --git a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/runtime.ts b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/runtime.ts
index 25f845417a7a68119bfaf66dcc8fd4b56838f676..9b29b9be6797fe2114111a581ae6a9fb06e368ca 100644
--- a/samples/client/petstore/typescript-rxjs/builds/with-npm-version/runtime.ts
+++ b/samples/client/petstore/typescript-rxjs/builds/with-npm-version/runtime.ts
@@ -12,7 +12,7 @@
  */
 
 import { Observable, of } from 'rxjs';
-import { ajax, AjaxResponse } from 'rxjs/ajax';
+import { ajax, AjaxRequest, AjaxResponse } from 'rxjs/ajax';
 import { map, concatMap } from 'rxjs/operators';
 
 export const BASE_PATH = 'http://petstore.swagger.io/v2'.replace(/\/+$/, '');
@@ -84,8 +84,8 @@ export class BaseAPI {
     withPostMiddleware = <T extends BaseAPI>(postMiddlewares: Array<Middleware['post']>) =>
         this.withMiddleware<T>(postMiddlewares.map((post) => ({ post })));
 
-    protected request = <T>(context: RequestOpts): Observable<T> => 
-        this.rxjsRequest(this.createRequestArgs(context)).pipe(
+    protected request = <T>(requestOpts: RequestOpts): Observable<T> => 
+        this.rxjsRequest(this.createRequestArgs(requestOpts)).pipe(
             map((res) => {
                 if (res.status >= 200 && res.status < 300) {
                     return res.response as T;
@@ -94,46 +94,38 @@ export class BaseAPI {
             })
         );
 
-    private createRequestArgs = (context: RequestOpts): RequestArgs => {
-        let url = this.configuration.basePath + context.path;
-        if (context.query !== undefined && Object.keys(context.query).length !== 0) {
+    private createRequestArgs = (requestOpts: RequestOpts): RequestArgs => {
+        let url = this.configuration.basePath + requestOpts.path;
+        if (requestOpts.query !== undefined && Object.keys(requestOpts.query).length !== 0) {
             // only add the queryString to the URL if there are query parameters.
             // this is done to avoid urls ending with a '?' character which buggy webservers
             // do not handle correctly sometimes.
-            url += '?' + queryString(context.query);
+            url += '?' + queryString(requestOpts.query);
         }
-        const body = context.body instanceof FormData ? context.body : JSON.stringify(context.body);
-        const options = {
-            method: context.method,
-            headers: context.headers,
-            body,
+        
+        return {
+            url,
+            method: requestOpts.method,
+            headers: requestOpts.headers,
+            body: requestOpts.body instanceof FormData ? requestOpts.body : JSON.stringify(requestOpts.body),
         };
-        return { url, options };
     }
 
-    private rxjsRequest = (params: RequestContext): Observable<AjaxResponse> => {
-        const preMiddlewares = this.middleware.filter((item) => item.pre);
-        const postMiddlewares = this.middleware.filter((item) => item.post);
-
-        return of(params).pipe(
-            map((args) => {
-                if (preMiddlewares) {
-                    preMiddlewares.forEach((mw) => (args = mw.pre!({ ...args })));
-                }
-                return args;
+    private rxjsRequest = (params: RequestArgs): Observable<AjaxResponse> => 
+        of(params).pipe(
+            map((request) => {
+                this.middleware.filter((item) => item.pre).forEach((mw) => (request = mw.pre!(request)));
+                return request;
             }),
             concatMap((args) =>
-                ajax({ url: args.url, ...args.options }).pipe(
+                ajax(args).pipe(
                     map((response) => {
-                        if (postMiddlewares) {
-                            postMiddlewares.forEach((mw) => (response = mw.post!({ ...params, response })));
-                        }
+                        this.middleware.filter((item) => item.post).forEach((mw) => (response = mw.post!(response)));
                         return response;
                     })
                 )
             )
         );
-    }
 
     /**
      * Create a shallow clone of `this` by constructing a new instance
@@ -162,27 +154,22 @@ export type HttpQuery = { [key: string]: string | number | null | boolean | Arra
 export type HttpBody = Json | FormData;
 export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original';
 
-export interface RequestArgs {
-    url: string;
-    options: RequestInit;
-}
-
 export interface RequestOpts {
     path: string;
     method: HttpMethod;
-    headers: HttpHeaders;
+    headers?: HttpHeaders;
     query?: HttpQuery;
     body?: HttpBody;
 }
 
+export const encodeURI = (value: any) => encodeURIComponent(String(value))
+
 const queryString = (params: HttpQuery): string => Object.keys(params)
     .map((key) => {
         const value = params[key];
-        if (value instanceof Array) {
-            return value.map((val) => `${encodeURIComponent(key)}=${encodeURIComponent(String(val))}`)
-                .join('&');
-        }
-        return `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`;
+        return (value instanceof Array)
+            ? value.map((val) => `${encodeURI(key)}=${encodeURI(val)}`).join('&')
+            : `${encodeURI(key)}=${encodeURI(value)}`;
     })
     .join('&');
 
@@ -195,12 +182,11 @@ export const throwIfRequired = (params: {[key: string]: any}, key: string, nickn
     }
 }
 
-export interface RequestContext extends RequestArgs {}
-export interface ResponseContext extends RequestArgs {
-    response: AjaxResponse;
-}
+// alias for easier importing
+export interface RequestArgs extends AjaxRequest {}
+export interface ResponseArgs extends AjaxResponse {}
 
 export interface Middleware {
-    pre?(context: RequestContext): RequestArgs;
-    post?(context: ResponseContext): AjaxResponse;
+    pre?(request: RequestArgs): RequestArgs;
+    post?(response: ResponseArgs): ResponseArgs;
 }
diff --git a/samples/client/test/swift4/default/.openapi-generator/VERSION b/samples/client/test/swift4/default/.openapi-generator/VERSION
index afa6365606414bf56f925745712166af5b4a2be0..83a328a9227eeb701e955686cfc946eff558dc31 100644
--- a/samples/client/test/swift4/default/.openapi-generator/VERSION
+++ b/samples/client/test/swift4/default/.openapi-generator/VERSION
@@ -1 +1 @@
-4.0.0-SNAPSHOT
\ No newline at end of file
+4.1.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/test/swift4/default/Info.plist b/samples/client/test/swift4/default/Info.plist
new file mode 100644
index 0000000000000000000000000000000000000000..323e5ecfc420ad71d4ea6890405ca4af8a03bafd
--- /dev/null
+++ b/samples/client/test/swift4/default/Info.plist
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>$(DEVELOPMENT_LANGUAGE)</string>
+	<key>CFBundleExecutable</key>
+	<string>$(EXECUTABLE_NAME)</string>
+	<key>CFBundleIdentifier</key>
+	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>$(PRODUCT_NAME)</string>
+	<key>CFBundlePackageType</key>
+	<string>FMWK</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleVersion</key>
+	<string>1</string>
+</dict>
+</plist>
diff --git a/samples/client/test/swift4/default/README.md b/samples/client/test/swift4/default/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..af6b0e46c424f1231b3194eda84d401bc6a486c2
--- /dev/null
+++ b/samples/client/test/swift4/default/README.md
@@ -0,0 +1,58 @@
+# Swift4 API client for TestClient
+
+This is a test schema which exercises Swagger schema features for testing the swift4 language codegen module.
+
+## Overview
+This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project.  By using the [openapi-spec from a remote server, you can easily generate an API client.
+
+- API version: 1.0
+- Package version: 
+- Build package: org.openapitools.codegen.languages.Swift4Codegen
+For more information, please visit [http://www.example.com](http://www.example.com)
+
+## Installation
+
+### Carthage
+
+Run `carthage update`
+
+### CocoaPods
+
+Run `pod install`
+
+## Documentation for API Endpoints
+
+All URIs are relative to *http://api.example.com/basePath*
+
+Class | Method | HTTP request | Description
+------------ | ------------- | ------------- | -------------
+*Swift4TestAPI* | [**getAllModels**](docs/Swift4TestAPI.md#getallmodels) | **GET** /allModels | Get all of the models
+
+
+## Documentation For Models
+
+ - [AllPrimitives](docs/AllPrimitives.md)
+ - [BaseCard](docs/BaseCard.md)
+ - [ErrorInfo](docs/ErrorInfo.md)
+ - [GetAllModelsResult](docs/GetAllModelsResult.md)
+ - [ModelWithPropertiesAndAdditionalProperties](docs/ModelWithPropertiesAndAdditionalProperties.md)
+ - [PersonCard](docs/PersonCard.md)
+ - [PersonCardAllOf](docs/PersonCardAllOf.md)
+ - [PlaceCard](docs/PlaceCard.md)
+ - [PlaceCardAllOf](docs/PlaceCardAllOf.md)
+ - [SampleBase](docs/SampleBase.md)
+ - [SampleSubClass](docs/SampleSubClass.md)
+ - [SampleSubClassAllOf](docs/SampleSubClassAllOf.md)
+ - [StringEnum](docs/StringEnum.md)
+ - [VariableNameTest](docs/VariableNameTest.md)
+
+
+## Documentation For Authorization
+
+ All endpoints do not require authorization.
+
+
+## Author
+
+jdoe@example.com
+
diff --git a/samples/client/test/swift4/default/TestClient.xcodeproj/project.pbxproj b/samples/client/test/swift4/default/TestClient.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000000000000000000000000000000000..dbc59b12b285a765a6f2dec5d57f2cc5c76a8047
--- /dev/null
+++ b/samples/client/test/swift4/default/TestClient.xcodeproj/project.pbxproj
@@ -0,0 +1,593 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 50;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		015BD03CC4B1E0523177800208C0941C /* VariableNameTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54860017185201A4C2A2F5445827D65E /* VariableNameTest.swift */; };
+		01B77912657B2635F5194D37366617E0 /* ModelDoubleArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3CB11DB8C924DADEC4055271EE72A9F7 /* ModelDoubleArray.swift */; };
+		0465C21A1C77CFA0FBB67D6A38BB6A70 /* SampleSubClassAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6555C6E30D09EAE39142D186B12DA851 /* SampleSubClassAllOf.swift */; };
+		05D8F159919BB1360370082D6B15E96F /* ModelWithPropertiesAndAdditionalProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05A0A03CD4A9113B9D91606FC3E78A07 /* ModelWithPropertiesAndAdditionalProperties.swift */; };
+		07A16BBDCAB4E02659E6649DC6ECD59E /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE6DF5346C62BDE2DAFA3B4EADAB1E15 /* Configuration.swift */; };
+		0AE08DF8DEB5A721A8F1CEFF6609AF91 /* ErrorInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A813A17AF964F26FB864212260A93BA /* ErrorInfo.swift */; };
+		1548FDC096222C790A4BDAC1F9B0C7A3 /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EAA1DBBB82C7F083B98595F00C3DB8F /* CodableHelper.swift */; };
+		1CBAE9E5347B8227EE53A7C31FFFDA8E /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F6F3F378FFC3FC0AC42268DFF60C672 /* APIs.swift */; };
+		247482A8C1C15C7AA16AAB1C68B7D4D3 /* SampleSubClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5626F1C9CCDE265EB25BBD47BB82FE20 /* SampleSubClass.swift */; };
+		29740774C4E591A43BFE5AD5D850D607 /* ModelErrorInfoArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B74ECB05DB9BEC1D5ECEBF80D21EC72 /* ModelErrorInfoArray.swift */; };
+		341277CE94C8DDF543DF60E31D5AAF90 /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F5B983EDA0E1D0C2C8FEDA73D46B99C /* APIs.swift */; };
+		36928C9EC7BF34D1ABA17C9C99F48CA1 /* AllPrimitives.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2A122B51B1736ACC859570A549F5697 /* AllPrimitives.swift */; };
+		39DA43938F1273FB74FA70398E416D97 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6AD136503821775A39AEEEA6068B078 /* APIHelper.swift */; };
+		3A04A4CA0C6EF8EED2A566EF631CDA38 /* AllPrimitives.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7EE13D018B8E8F7283534E949DE9C1A5 /* AllPrimitives.swift */; };
+		488FF52AADBE1FC70A2314B165608539 /* VariableNameTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C09C1DB6708AB2D8997BEE265743B66 /* VariableNameTest.swift */; };
+		5783CA3FD89CF0E9EDC6687D87375645 /* SampleBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDF35F63D7105D55BA0D3FD910934C7E /* SampleBase.swift */; };
+		597201DACC303FF640F7BEDA3677FEC9 /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E7F1C8F69E25D093E56B114A316C29B /* AlamofireImplementations.swift */; };
+		5A7FBED271D728F0381000757B16E02E /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 93BA682C97038055435A32D0B20421CA /* CodableHelper.swift */; };
+		6925079AF17449A1098980FD21661772 /* GetAllModelsResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD4DAE449BCB032587594847465761DA /* GetAllModelsResult.swift */; };
+		6930D98F5DCC24DB5FA6BF4878265540 /* BaseCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = C209BA7D3B7026133ACB614905CDF3DE /* BaseCard.swift */; };
+		6AF51F30439F60E4EBB0B67B9146DAEA /* SampleSubClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA9C1F9551FB619240EC0F703D6B8C39 /* SampleSubClass.swift */; };
+		70C0212AE5CDB0BEF5657DF81250D036 /* PlaceCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13DD01D5ABD4BE352CB6FCBF31194C69 /* PlaceCard.swift */; };
+		747AC6451754CEF1193D159865B4FDED /* ErrorInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 671A11EAF02ED88CFFDAFBC52D66F274 /* ErrorInfo.swift */; };
+		7756C1C6B2B94E3454286401BCDEF17E /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69A98ECBBBE9667D9847EEABC00CCBC0 /* Configuration.swift */; };
+		7948167C041B9082A9F1281E44009E0A /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EF84FF97BA833181D55A51ACBBFF218 /* APIHelper.swift */; };
+		7B8A7764281B9CD000F38C5093E0B6F7 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7DCE280D9FD953B91C0F18EF298D613 /* JSONEncodableEncoding.swift */; };
+		7ECB25910CAB58A03AF984BEAAA9BC69 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3D0164E2EEC228143968A2D8A5F2B46 /* Extensions.swift */; };
+		803C9B5F6176706F80A32958D7F9DE9E /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = A14BAA0CFCF5210DF11F06D36AF8AFFC /* JSONEncodableEncoding.swift */; };
+		83B8F4478931AAEEF503BCAB1CD1F0A7 /* ModelErrorInfoArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = C244E3993E5EAFE0E4DEF9C9D2FD7AE3 /* ModelErrorInfoArray.swift */; };
+		8875F33BCBBF8C9813818B9CAF310935 /* PersonCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30CDB0CB291617B59C7E29CBAE2AC857 /* PersonCard.swift */; };
+		8FB80DEE562554FFBCA968E4BF7517EA /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1E452EBA4D5D6D227089137C821D4A7 /* AlamofireImplementations.swift */; };
+		9538FE15480391840577909BB4FF62F9 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F082FE9586189859619C91E5CBD023DE /* Alamofire.framework */; };
+		9611B85399F5F378CADED38430D2CB4A /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3CAA5D350129277E17583C27AE7EF37D /* Models.swift */; };
+		96BD8B1CF37A3E447E80D6540BF1AFBA /* Swift4TestAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 398F88885A50B33451FCFDF126F911DA /* Swift4TestAPI.swift */; };
+		9A016EDBC3BBBA78EACEA32D67EF4666 /* PlaceCardAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 889ABCD292051498ACCC66E810BD8C5F /* PlaceCardAllOf.swift */; };
+		A0FF411F02DB088069D332AD6C631F33 /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 042A701F1D826A4F68808DE6FDF0A379 /* JSONEncodingHelper.swift */; };
+		A4DA07391D04D940BFBFE9E3FA5D3150 /* ModelWithPropertiesAndAdditionalProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17B59E56BC42D7F70BBC0D0802D62025 /* ModelWithPropertiesAndAdditionalProperties.swift */; };
+		A5EBF89E903775EDEC460C891C5BBD56 /* PersonCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = E29C3BC88FEAF94FECA67A4264C88682 /* PersonCard.swift */; };
+		A9C82CF0CD1CFAE8913C8FCC4D5ED2C8 /* StringEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = A3BD76CE1B85046CF575F42B557C3B49 /* StringEnum.swift */; };
+		AA01F316FEED5B0AC28DEA73736220CF /* ModelWithStringAdditionalPropertiesOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BFF565190B02C5B55C36C5EBFE9D04C /* ModelWithStringAdditionalPropertiesOnly.swift */; };
+		AA5DE3AAC93AFD9345A5BDCEB7AC9293 /* ModelWithStringAdditionalPropertiesOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 023CA47DA7B8EA5E674146768B8CB891 /* ModelWithStringAdditionalPropertiesOnly.swift */; };
+		B235AE419587D81C90450899BCF0F4B8 /* PlaceCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF65F76D52F973768497A243985926E5 /* PlaceCard.swift */; };
+		B276B41B140C7F840DFB54F00CF7D9FA /* StringEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2EAE0680C3163069E97D7699F6987C4B /* StringEnum.swift */; };
+		B807F472998820B4609FAB3CF159AC9C /* SampleBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAB9BE4C49A34C2D3AE2D4E3E109A089 /* SampleBase.swift */; };
+		C108EE576362791F54AAAC460A6A2A5A /* ModelWithIntAdditionalPropertiesOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14100F82AA0E6E697613420AD32459E2 /* ModelWithIntAdditionalPropertiesOnly.swift */; };
+		C64D1517BDDB5E9E2D2FBA43212C53E6 /* GetAllModelsResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACAEAEEB934E57798AED060221895850 /* GetAllModelsResult.swift */; };
+		C815EE6D8919A93CE7381BC35CCE9C81 /* PersonCardAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C4F016421122219AE4DCDF97576F500 /* PersonCardAllOf.swift */; };
+		CE30C5A4E4531B8458327A6DC065DE32 /* ModelStringArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DEC406D4B97E9127B278F6B56FEB63C /* ModelStringArray.swift */; };
+		D09E55499CF1D4974FBAD910AFC620F9 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 191E19C2F89B8663BCF4FBEAFAAA8775 /* Extensions.swift */; };
+		D91FB21ED8D8C4A270B2A0357BD2AE4A /* ModelStringArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1507AFE9907AC803C060934F91F241 /* ModelStringArray.swift */; };
+		DDF53E7B6B5F4ED126A83920A7DA6E7F /* ModelWithIntAdditionalPropertiesOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 68FA5194EA643821CA1085C303146E0D /* ModelWithIntAdditionalPropertiesOnly.swift */; };
+		E87B5442792566BBD8D5EA0E6719C36E /* BaseCard.swift in Sources */ = {isa = PBXBuildFile; fileRef = C418DE3632EC3A053E7379EDCACB6115 /* BaseCard.swift */; };
+		EBFE3E5FC0A83DE3DA3971A0A1AB2EFE /* Swift4TestAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF9E03057B35B32AC59ADC1B90FEF850 /* Swift4TestAPI.swift */; };
+		EFF02DC14D48C2482A33645FD0E22E16 /* ModelDoubleArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE5A2A8F47EC101841093D2CF573518A /* ModelDoubleArray.swift */; };
+		FC83769C3F6541E13ED67BD112728B8F /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = A140137667E350EAFDE010EA34389F6A /* Models.swift */; };
+		FE104CA1062BD0AC44CAB66CD4CB271B /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 282DC97E6B31E9729E891D97B5A0D0C7 /* JSONEncodingHelper.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+		023CA47DA7B8EA5E674146768B8CB891 /* ModelWithStringAdditionalPropertiesOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelWithStringAdditionalPropertiesOnly.swift; sourceTree = "<group>"; };
+		042A701F1D826A4F68808DE6FDF0A379 /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodingHelper.swift; sourceTree = "<group>"; };
+		05A0A03CD4A9113B9D91606FC3E78A07 /* ModelWithPropertiesAndAdditionalProperties.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelWithPropertiesAndAdditionalProperties.swift; sourceTree = "<group>"; };
+		13DD01D5ABD4BE352CB6FCBF31194C69 /* PlaceCard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlaceCard.swift; sourceTree = "<group>"; };
+		14100F82AA0E6E697613420AD32459E2 /* ModelWithIntAdditionalPropertiesOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelWithIntAdditionalPropertiesOnly.swift; sourceTree = "<group>"; };
+		17B59E56BC42D7F70BBC0D0802D62025 /* ModelWithPropertiesAndAdditionalProperties.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelWithPropertiesAndAdditionalProperties.swift; sourceTree = "<group>"; };
+		191E19C2F89B8663BCF4FBEAFAAA8775 /* Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = "<group>"; };
+		1A813A17AF964F26FB864212260A93BA /* ErrorInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ErrorInfo.swift; sourceTree = "<group>"; };
+		1E7F1C8F69E25D093E56B114A316C29B /* AlamofireImplementations.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlamofireImplementations.swift; sourceTree = "<group>"; };
+		282DC97E6B31E9729E891D97B5A0D0C7 /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodingHelper.swift; sourceTree = "<group>"; };
+		2C4F016421122219AE4DCDF97576F500 /* PersonCardAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PersonCardAllOf.swift; sourceTree = "<group>"; };
+		2EAE0680C3163069E97D7699F6987C4B /* StringEnum.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringEnum.swift; sourceTree = "<group>"; };
+		2F5B983EDA0E1D0C2C8FEDA73D46B99C /* APIs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIs.swift; sourceTree = "<group>"; };
+		30CDB0CB291617B59C7E29CBAE2AC857 /* PersonCard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PersonCard.swift; sourceTree = "<group>"; };
+		398F88885A50B33451FCFDF126F911DA /* Swift4TestAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Swift4TestAPI.swift; sourceTree = "<group>"; };
+		3CAA5D350129277E17583C27AE7EF37D /* Models.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Models.swift; sourceTree = "<group>"; };
+		3CB11DB8C924DADEC4055271EE72A9F7 /* ModelDoubleArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelDoubleArray.swift; sourceTree = "<group>"; };
+		4B74ECB05DB9BEC1D5ECEBF80D21EC72 /* ModelErrorInfoArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelErrorInfoArray.swift; sourceTree = "<group>"; };
+		4F6F3F378FFC3FC0AC42268DFF60C672 /* APIs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIs.swift; sourceTree = "<group>"; };
+		54860017185201A4C2A2F5445827D65E /* VariableNameTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VariableNameTest.swift; sourceTree = "<group>"; };
+		5626F1C9CCDE265EB25BBD47BB82FE20 /* SampleSubClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SampleSubClass.swift; sourceTree = "<group>"; };
+		5DEC406D4B97E9127B278F6B56FEB63C /* ModelStringArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelStringArray.swift; sourceTree = "<group>"; };
+		5EF84FF97BA833181D55A51ACBBFF218 /* APIHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIHelper.swift; sourceTree = "<group>"; };
+		6555C6E30D09EAE39142D186B12DA851 /* SampleSubClassAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SampleSubClassAllOf.swift; sourceTree = "<group>"; };
+		671A11EAF02ED88CFFDAFBC52D66F274 /* ErrorInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ErrorInfo.swift; sourceTree = "<group>"; };
+		68FA5194EA643821CA1085C303146E0D /* ModelWithIntAdditionalPropertiesOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelWithIntAdditionalPropertiesOnly.swift; sourceTree = "<group>"; };
+		69A98ECBBBE9667D9847EEABC00CCBC0 /* Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = "<group>"; };
+		6BFF565190B02C5B55C36C5EBFE9D04C /* ModelWithStringAdditionalPropertiesOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelWithStringAdditionalPropertiesOnly.swift; sourceTree = "<group>"; };
+		7C09C1DB6708AB2D8997BEE265743B66 /* VariableNameTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VariableNameTest.swift; sourceTree = "<group>"; };
+		7EE13D018B8E8F7283534E949DE9C1A5 /* AllPrimitives.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AllPrimitives.swift; sourceTree = "<group>"; };
+		889ABCD292051498ACCC66E810BD8C5F /* PlaceCardAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlaceCardAllOf.swift; sourceTree = "<group>"; };
+		93BA682C97038055435A32D0B20421CA /* CodableHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodableHelper.swift; sourceTree = "<group>"; };
+		9EAA1DBBB82C7F083B98595F00C3DB8F /* CodableHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodableHelper.swift; sourceTree = "<group>"; };
+		9FD147676BF8F2DD7E471810E3DCBBDA /* TestClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = TestClient.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+		A140137667E350EAFDE010EA34389F6A /* Models.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Models.swift; sourceTree = "<group>"; };
+		A14BAA0CFCF5210DF11F06D36AF8AFFC /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodableEncoding.swift; sourceTree = "<group>"; };
+		A3BD76CE1B85046CF575F42B557C3B49 /* StringEnum.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringEnum.swift; sourceTree = "<group>"; };
+		ACAEAEEB934E57798AED060221895850 /* GetAllModelsResult.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetAllModelsResult.swift; sourceTree = "<group>"; };
+		B1E452EBA4D5D6D227089137C821D4A7 /* AlamofireImplementations.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlamofireImplementations.swift; sourceTree = "<group>"; };
+		B2A122B51B1736ACC859570A549F5697 /* AllPrimitives.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AllPrimitives.swift; sourceTree = "<group>"; };
+		BDF35F63D7105D55BA0D3FD910934C7E /* SampleBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SampleBase.swift; sourceTree = "<group>"; };
+		BF65F76D52F973768497A243985926E5 /* PlaceCard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlaceCard.swift; sourceTree = "<group>"; };
+		C209BA7D3B7026133ACB614905CDF3DE /* BaseCard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseCard.swift; sourceTree = "<group>"; };
+		C244E3993E5EAFE0E4DEF9C9D2FD7AE3 /* ModelErrorInfoArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelErrorInfoArray.swift; sourceTree = "<group>"; };
+		C418DE3632EC3A053E7379EDCACB6115 /* BaseCard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseCard.swift; sourceTree = "<group>"; };
+		C6AD136503821775A39AEEEA6068B078 /* APIHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIHelper.swift; sourceTree = "<group>"; };
+		CAB9BE4C49A34C2D3AE2D4E3E109A089 /* SampleBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SampleBase.swift; sourceTree = "<group>"; };
+		CD4DAE449BCB032587594847465761DA /* GetAllModelsResult.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GetAllModelsResult.swift; sourceTree = "<group>"; };
+		CE6DF5346C62BDE2DAFA3B4EADAB1E15 /* Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = "<group>"; };
+		CF9E03057B35B32AC59ADC1B90FEF850 /* Swift4TestAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Swift4TestAPI.swift; sourceTree = "<group>"; };
+		D3D0164E2EEC228143968A2D8A5F2B46 /* Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = "<group>"; };
+		D7DCE280D9FD953B91C0F18EF298D613 /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodableEncoding.swift; sourceTree = "<group>"; };
+		DE1507AFE9907AC803C060934F91F241 /* ModelStringArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelStringArray.swift; sourceTree = "<group>"; };
+		E29C3BC88FEAF94FECA67A4264C88682 /* PersonCard.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PersonCard.swift; sourceTree = "<group>"; };
+		EA9C1F9551FB619240EC0F703D6B8C39 /* SampleSubClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SampleSubClass.swift; sourceTree = "<group>"; };
+		EE5A2A8F47EC101841093D2CF573518A /* ModelDoubleArray.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModelDoubleArray.swift; sourceTree = "<group>"; };
+		F082FE9586189859619C91E5CBD023DE /* Alamofire.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Alamofire.framework; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		F915CBFBD18EAF6362CE8399303327CB /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				9538FE15480391840577909BB4FF62F9 /* Alamofire.framework in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		2539B43B44954BFCB19E44BE7750AFF4 /* Models */ = {
+			isa = PBXGroup;
+			children = (
+				B2A122B51B1736ACC859570A549F5697 /* AllPrimitives.swift */,
+				C418DE3632EC3A053E7379EDCACB6115 /* BaseCard.swift */,
+				671A11EAF02ED88CFFDAFBC52D66F274 /* ErrorInfo.swift */,
+				CD4DAE449BCB032587594847465761DA /* GetAllModelsResult.swift */,
+				3CB11DB8C924DADEC4055271EE72A9F7 /* ModelDoubleArray.swift */,
+				4B74ECB05DB9BEC1D5ECEBF80D21EC72 /* ModelErrorInfoArray.swift */,
+				DE1507AFE9907AC803C060934F91F241 /* ModelStringArray.swift */,
+				14100F82AA0E6E697613420AD32459E2 /* ModelWithIntAdditionalPropertiesOnly.swift */,
+				05A0A03CD4A9113B9D91606FC3E78A07 /* ModelWithPropertiesAndAdditionalProperties.swift */,
+				023CA47DA7B8EA5E674146768B8CB891 /* ModelWithStringAdditionalPropertiesOnly.swift */,
+				E29C3BC88FEAF94FECA67A4264C88682 /* PersonCard.swift */,
+				BF65F76D52F973768497A243985926E5 /* PlaceCard.swift */,
+				BDF35F63D7105D55BA0D3FD910934C7E /* SampleBase.swift */,
+				5626F1C9CCDE265EB25BBD47BB82FE20 /* SampleSubClass.swift */,
+				2EAE0680C3163069E97D7699F6987C4B /* StringEnum.swift */,
+				54860017185201A4C2A2F5445827D65E /* VariableNameTest.swift */,
+			);
+			path = Models;
+			sourceTree = "<group>";
+		};
+		26F3607B28A0AD360F5100F5BC4A640C /* Swaggers */ = {
+			isa = PBXGroup;
+			children = (
+				1E7F1C8F69E25D093E56B114A316C29B /* AlamofireImplementations.swift */,
+				5EF84FF97BA833181D55A51ACBBFF218 /* APIHelper.swift */,
+				2F5B983EDA0E1D0C2C8FEDA73D46B99C /* APIs.swift */,
+				9EAA1DBBB82C7F083B98595F00C3DB8F /* CodableHelper.swift */,
+				69A98ECBBBE9667D9847EEABC00CCBC0 /* Configuration.swift */,
+				191E19C2F89B8663BCF4FBEAFAAA8775 /* Extensions.swift */,
+				A14BAA0CFCF5210DF11F06D36AF8AFFC /* JSONEncodableEncoding.swift */,
+				282DC97E6B31E9729E891D97B5A0D0C7 /* JSONEncodingHelper.swift */,
+				3CAA5D350129277E17583C27AE7EF37D /* Models.swift */,
+				357449309E73CA39C88139611B93904B /* APIs */,
+				2539B43B44954BFCB19E44BE7750AFF4 /* Models */,
+			);
+			path = Swaggers;
+			sourceTree = "<group>";
+		};
+		3049D31996790CF8E31B6F01065B684D = {
+			isa = PBXGroup;
+			children = (
+				8C649F3AF4A7C6D66B52AA38EA7D579A /* TestClient */,
+				FDF67B74659AE43B939D6A0D2F133D38 /* Frameworks */,
+				CBA5AD47CD6A6AF075403DD13F84D75F /* Products */,
+			);
+			sourceTree = "<group>";
+		};
+		357449309E73CA39C88139611B93904B /* APIs */ = {
+			isa = PBXGroup;
+			children = (
+				398F88885A50B33451FCFDF126F911DA /* Swift4TestAPI.swift */,
+			);
+			path = APIs;
+			sourceTree = "<group>";
+		};
+		3A1CFAB4CC75547815260F88D6BF9BAC /* OpenAPIs */ = {
+			isa = PBXGroup;
+			children = (
+				B1E452EBA4D5D6D227089137C821D4A7 /* AlamofireImplementations.swift */,
+				C6AD136503821775A39AEEEA6068B078 /* APIHelper.swift */,
+				4F6F3F378FFC3FC0AC42268DFF60C672 /* APIs.swift */,
+				93BA682C97038055435A32D0B20421CA /* CodableHelper.swift */,
+				CE6DF5346C62BDE2DAFA3B4EADAB1E15 /* Configuration.swift */,
+				D3D0164E2EEC228143968A2D8A5F2B46 /* Extensions.swift */,
+				D7DCE280D9FD953B91C0F18EF298D613 /* JSONEncodableEncoding.swift */,
+				042A701F1D826A4F68808DE6FDF0A379 /* JSONEncodingHelper.swift */,
+				A140137667E350EAFDE010EA34389F6A /* Models.swift */,
+				AC6589BAFE1BDABB49267C33B4B99539 /* APIs */,
+				9A5460679035417A84B6C8845A45CF47 /* Models */,
+			);
+			path = OpenAPIs;
+			sourceTree = "<group>";
+		};
+		3E4B2B40F4EEE4F7E6149EBF68AECB77 /* Classes */ = {
+			isa = PBXGroup;
+			children = (
+				3A1CFAB4CC75547815260F88D6BF9BAC /* OpenAPIs */,
+				26F3607B28A0AD360F5100F5BC4A640C /* Swaggers */,
+			);
+			path = Classes;
+			sourceTree = "<group>";
+		};
+		7B6E2BAF77019A8E9F4FFB571089D69E /* iOS */ = {
+			isa = PBXGroup;
+			children = (
+				F082FE9586189859619C91E5CBD023DE /* Alamofire.framework */,
+			);
+			path = iOS;
+			sourceTree = "<group>";
+		};
+		8C649F3AF4A7C6D66B52AA38EA7D579A /* TestClient */ = {
+			isa = PBXGroup;
+			children = (
+				3E4B2B40F4EEE4F7E6149EBF68AECB77 /* Classes */,
+			);
+			path = TestClient;
+			sourceTree = "<group>";
+		};
+		9A5460679035417A84B6C8845A45CF47 /* Models */ = {
+			isa = PBXGroup;
+			children = (
+				7EE13D018B8E8F7283534E949DE9C1A5 /* AllPrimitives.swift */,
+				C209BA7D3B7026133ACB614905CDF3DE /* BaseCard.swift */,
+				1A813A17AF964F26FB864212260A93BA /* ErrorInfo.swift */,
+				ACAEAEEB934E57798AED060221895850 /* GetAllModelsResult.swift */,
+				EE5A2A8F47EC101841093D2CF573518A /* ModelDoubleArray.swift */,
+				C244E3993E5EAFE0E4DEF9C9D2FD7AE3 /* ModelErrorInfoArray.swift */,
+				5DEC406D4B97E9127B278F6B56FEB63C /* ModelStringArray.swift */,
+				68FA5194EA643821CA1085C303146E0D /* ModelWithIntAdditionalPropertiesOnly.swift */,
+				17B59E56BC42D7F70BBC0D0802D62025 /* ModelWithPropertiesAndAdditionalProperties.swift */,
+				6BFF565190B02C5B55C36C5EBFE9D04C /* ModelWithStringAdditionalPropertiesOnly.swift */,
+				30CDB0CB291617B59C7E29CBAE2AC857 /* PersonCard.swift */,
+				2C4F016421122219AE4DCDF97576F500 /* PersonCardAllOf.swift */,
+				13DD01D5ABD4BE352CB6FCBF31194C69 /* PlaceCard.swift */,
+				889ABCD292051498ACCC66E810BD8C5F /* PlaceCardAllOf.swift */,
+				CAB9BE4C49A34C2D3AE2D4E3E109A089 /* SampleBase.swift */,
+				EA9C1F9551FB619240EC0F703D6B8C39 /* SampleSubClass.swift */,
+				6555C6E30D09EAE39142D186B12DA851 /* SampleSubClassAllOf.swift */,
+				A3BD76CE1B85046CF575F42B557C3B49 /* StringEnum.swift */,
+				7C09C1DB6708AB2D8997BEE265743B66 /* VariableNameTest.swift */,
+			);
+			path = Models;
+			sourceTree = "<group>";
+		};
+		AC6589BAFE1BDABB49267C33B4B99539 /* APIs */ = {
+			isa = PBXGroup;
+			children = (
+				CF9E03057B35B32AC59ADC1B90FEF850 /* Swift4TestAPI.swift */,
+			);
+			path = APIs;
+			sourceTree = "<group>";
+		};
+		CBA5AD47CD6A6AF075403DD13F84D75F /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				9FD147676BF8F2DD7E471810E3DCBBDA /* TestClient.framework */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+		FA683CC04EA50A59799FB6574AE7EEBB /* Carthage */ = {
+			isa = PBXGroup;
+			children = (
+				7B6E2BAF77019A8E9F4FFB571089D69E /* iOS */,
+			);
+			name = Carthage;
+			path = Carthage/Build;
+			sourceTree = "<group>";
+		};
+		FDF67B74659AE43B939D6A0D2F133D38 /* Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				FA683CC04EA50A59799FB6574AE7EEBB /* Carthage */,
+			);
+			name = Frameworks;
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+		57071453919863518A53B6C49465271E /* TestClient */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = 8C5DAAB4D2F2BC3EB2A18339A4724ACC /* Build configuration list for PBXNativeTarget "TestClient" */;
+			buildPhases = (
+				411C0E7C892A38659291062123603A2E /* Sources */,
+				F915CBFBD18EAF6362CE8399303327CB /* Frameworks */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = TestClient;
+			productName = TestClient;
+			productReference = 9FD147676BF8F2DD7E471810E3DCBBDA /* TestClient.framework */;
+			productType = "com.apple.product-type.framework";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		498565B44CD0696E30C61F1F5667D8C7 /* Project object */ = {
+			isa = PBXProject;
+			attributes = {
+				LastUpgradeCheck = 1000;
+			};
+			buildConfigurationList = 87FDCE50021B77EB5CF8EF080B65BDD1 /* Build configuration list for PBXProject "TestClient" */;
+			compatibilityVersion = "Xcode 9.3";
+			developmentRegion = en;
+			hasScannedForEncodings = 0;
+			knownRegions = (
+				en,
+			);
+			mainGroup = 3049D31996790CF8E31B6F01065B684D;
+			projectDirPath = "";
+			projectRoot = "";
+			targets = (
+				57071453919863518A53B6C49465271E /* TestClient */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXSourcesBuildPhase section */
+		411C0E7C892A38659291062123603A2E /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				7948167C041B9082A9F1281E44009E0A /* APIHelper.swift in Sources */,
+				39DA43938F1273FB74FA70398E416D97 /* APIHelper.swift in Sources */,
+				1CBAE9E5347B8227EE53A7C31FFFDA8E /* APIs.swift in Sources */,
+				341277CE94C8DDF543DF60E31D5AAF90 /* APIs.swift in Sources */,
+				597201DACC303FF640F7BEDA3677FEC9 /* AlamofireImplementations.swift in Sources */,
+				8FB80DEE562554FFBCA968E4BF7517EA /* AlamofireImplementations.swift in Sources */,
+				3A04A4CA0C6EF8EED2A566EF631CDA38 /* AllPrimitives.swift in Sources */,
+				36928C9EC7BF34D1ABA17C9C99F48CA1 /* AllPrimitives.swift in Sources */,
+				6930D98F5DCC24DB5FA6BF4878265540 /* BaseCard.swift in Sources */,
+				E87B5442792566BBD8D5EA0E6719C36E /* BaseCard.swift in Sources */,
+				5A7FBED271D728F0381000757B16E02E /* CodableHelper.swift in Sources */,
+				1548FDC096222C790A4BDAC1F9B0C7A3 /* CodableHelper.swift in Sources */,
+				7756C1C6B2B94E3454286401BCDEF17E /* Configuration.swift in Sources */,
+				07A16BBDCAB4E02659E6649DC6ECD59E /* Configuration.swift in Sources */,
+				0AE08DF8DEB5A721A8F1CEFF6609AF91 /* ErrorInfo.swift in Sources */,
+				747AC6451754CEF1193D159865B4FDED /* ErrorInfo.swift in Sources */,
+				D09E55499CF1D4974FBAD910AFC620F9 /* Extensions.swift in Sources */,
+				7ECB25910CAB58A03AF984BEAAA9BC69 /* Extensions.swift in Sources */,
+				C64D1517BDDB5E9E2D2FBA43212C53E6 /* GetAllModelsResult.swift in Sources */,
+				6925079AF17449A1098980FD21661772 /* GetAllModelsResult.swift in Sources */,
+				803C9B5F6176706F80A32958D7F9DE9E /* JSONEncodableEncoding.swift in Sources */,
+				7B8A7764281B9CD000F38C5093E0B6F7 /* JSONEncodableEncoding.swift in Sources */,
+				FE104CA1062BD0AC44CAB66CD4CB271B /* JSONEncodingHelper.swift in Sources */,
+				A0FF411F02DB088069D332AD6C631F33 /* JSONEncodingHelper.swift in Sources */,
+				01B77912657B2635F5194D37366617E0 /* ModelDoubleArray.swift in Sources */,
+				EFF02DC14D48C2482A33645FD0E22E16 /* ModelDoubleArray.swift in Sources */,
+				83B8F4478931AAEEF503BCAB1CD1F0A7 /* ModelErrorInfoArray.swift in Sources */,
+				29740774C4E591A43BFE5AD5D850D607 /* ModelErrorInfoArray.swift in Sources */,
+				CE30C5A4E4531B8458327A6DC065DE32 /* ModelStringArray.swift in Sources */,
+				D91FB21ED8D8C4A270B2A0357BD2AE4A /* ModelStringArray.swift in Sources */,
+				DDF53E7B6B5F4ED126A83920A7DA6E7F /* ModelWithIntAdditionalPropertiesOnly.swift in Sources */,
+				C108EE576362791F54AAAC460A6A2A5A /* ModelWithIntAdditionalPropertiesOnly.swift in Sources */,
+				A4DA07391D04D940BFBFE9E3FA5D3150 /* ModelWithPropertiesAndAdditionalProperties.swift in Sources */,
+				05D8F159919BB1360370082D6B15E96F /* ModelWithPropertiesAndAdditionalProperties.swift in Sources */,
+				AA01F316FEED5B0AC28DEA73736220CF /* ModelWithStringAdditionalPropertiesOnly.swift in Sources */,
+				AA5DE3AAC93AFD9345A5BDCEB7AC9293 /* ModelWithStringAdditionalPropertiesOnly.swift in Sources */,
+				FC83769C3F6541E13ED67BD112728B8F /* Models.swift in Sources */,
+				9611B85399F5F378CADED38430D2CB4A /* Models.swift in Sources */,
+				A5EBF89E903775EDEC460C891C5BBD56 /* PersonCard.swift in Sources */,
+				8875F33BCBBF8C9813818B9CAF310935 /* PersonCard.swift in Sources */,
+				C815EE6D8919A93CE7381BC35CCE9C81 /* PersonCardAllOf.swift in Sources */,
+				70C0212AE5CDB0BEF5657DF81250D036 /* PlaceCard.swift in Sources */,
+				B235AE419587D81C90450899BCF0F4B8 /* PlaceCard.swift in Sources */,
+				9A016EDBC3BBBA78EACEA32D67EF4666 /* PlaceCardAllOf.swift in Sources */,
+				B807F472998820B4609FAB3CF159AC9C /* SampleBase.swift in Sources */,
+				5783CA3FD89CF0E9EDC6687D87375645 /* SampleBase.swift in Sources */,
+				6AF51F30439F60E4EBB0B67B9146DAEA /* SampleSubClass.swift in Sources */,
+				247482A8C1C15C7AA16AAB1C68B7D4D3 /* SampleSubClass.swift in Sources */,
+				0465C21A1C77CFA0FBB67D6A38BB6A70 /* SampleSubClassAllOf.swift in Sources */,
+				A9C82CF0CD1CFAE8913C8FCC4D5ED2C8 /* StringEnum.swift in Sources */,
+				B276B41B140C7F840DFB54F00CF7D9FA /* StringEnum.swift in Sources */,
+				96BD8B1CF37A3E447E80D6540BF1AFBA /* Swift4TestAPI.swift in Sources */,
+				EBFE3E5FC0A83DE3DA3971A0A1AB2EFE /* Swift4TestAPI.swift in Sources */,
+				015BD03CC4B1E0523177800208C0941C /* VariableNameTest.swift in Sources */,
+				488FF52AADBE1FC70A2314B165608539 /* VariableNameTest.swift in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+		1D58A58AE8D976D68029505FF608CA04 /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Debug;
+		};
+		20BF9E8F2FA4569489A9CEACF182CB4F /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = dwarf;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				ENABLE_TESTABILITY = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"$(inherited)",
+					"DEBUG=1",
+				);
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				MTL_ENABLE_DEBUG_INFO = YES;
+				ONLY_ACTIVE_ARCH = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+				SWIFT_VERSION = 4.2;
+			};
+			name = Debug;
+		};
+		295215B264B439F2CFBEFBA238635BEB /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ALWAYS_SEARCH_USER_PATHS = NO;
+				CLANG_ANALYZER_NONNULL = YES;
+				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+				CLANG_CXX_LIBRARY = "libc++";
+				CLANG_ENABLE_MODULES = YES;
+				CLANG_ENABLE_OBJC_ARC = YES;
+				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+				CLANG_WARN_BOOL_CONVERSION = YES;
+				CLANG_WARN_COMMA = YES;
+				CLANG_WARN_CONSTANT_CONVERSION = YES;
+				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+				CLANG_WARN_EMPTY_BODY = YES;
+				CLANG_WARN_ENUM_CONVERSION = YES;
+				CLANG_WARN_INFINITE_RECURSION = YES;
+				CLANG_WARN_INT_CONVERSION = YES;
+				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+				CLANG_WARN_STRICT_PROTOTYPES = YES;
+				CLANG_WARN_SUSPICIOUS_MOVE = YES;
+				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+				CLANG_WARN_UNREACHABLE_CODE = YES;
+				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+				COPY_PHASE_STRIP = NO;
+				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+				ENABLE_NS_ASSERTIONS = NO;
+				ENABLE_STRICT_OBJC_MSGSEND = YES;
+				GCC_C_LANGUAGE_STANDARD = gnu11;
+				GCC_NO_COMMON_BLOCKS = YES;
+				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+				GCC_WARN_UNDECLARED_SELECTOR = YES;
+				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+				GCC_WARN_UNUSED_FUNCTION = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				PRODUCT_NAME = "$(TARGET_NAME)";
+				SDKROOT = iphoneos;
+				SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
+				SWIFT_VERSION = 4.2;
+				VALIDATE_PRODUCT = YES;
+			};
+			name = Release;
+		};
+		4CDAC84BFAB424A21776ADCA2E9573B0 /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				APPLICATION_EXTENSION_API_ONLY = YES;
+				CODE_SIGN_IDENTITY = "";
+				CURRENT_PROJECT_VERSION = 1;
+				DEFINES_MODULE = YES;
+				DYLIB_COMPATIBILITY_VERSION = 1;
+				DYLIB_CURRENT_VERSION = 1;
+				DYLIB_INSTALL_NAME_BASE = "@rpath";
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(PROJECT_DIR)/Carthage/Build/iOS",
+				);
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+				IPHONEOS_DEPLOYMENT_TARGET = 10.0;
+				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
+				SDKROOT = iphoneos;
+				SKIP_INSTALL = YES;
+				TARGETED_DEVICE_FAMILY = "1,2";
+				VERSIONING_SYSTEM = "apple-generic";
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		87FDCE50021B77EB5CF8EF080B65BDD1 /* Build configuration list for PBXProject "TestClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				20BF9E8F2FA4569489A9CEACF182CB4F /* Debug */,
+				295215B264B439F2CFBEFBA238635BEB /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Debug;
+		};
+		8C5DAAB4D2F2BC3EB2A18339A4724ACC /* Build configuration list for PBXNativeTarget "TestClient" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				1D58A58AE8D976D68029505FF608CA04 /* Debug */,
+				4CDAC84BFAB424A21776ADCA2E9573B0 /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = "";
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = 498565B44CD0696E30C61F1F5667D8C7 /* Project object */;
+}
diff --git a/samples/client/test/swift4/default/TestClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/samples/client/test/swift4/default/TestClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000000000000000000000000000000000000..919434a6254f0e9651f402737811be6634a03e9c
--- /dev/null
+++ b/samples/client/test/swift4/default/TestClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+   version = "1.0">
+   <FileRef
+      location = "self:">
+   </FileRef>
+</Workspace>
diff --git a/samples/client/test/swift4/default/TestClient.xcodeproj/xcshareddata/xcschemes/TestClient.xcscheme b/samples/client/test/swift4/default/TestClient.xcodeproj/xcshareddata/xcschemes/TestClient.xcscheme
new file mode 100644
index 0000000000000000000000000000000000000000..f9f59ff5ae0ac758f4aca261be9eaa5cdadb0489
--- /dev/null
+++ b/samples/client/test/swift4/default/TestClient.xcodeproj/xcshareddata/xcschemes/TestClient.xcscheme
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Scheme
+   LastUpgradeVersion = "1000"
+   version = "1.3">
+   <BuildAction
+      parallelizeBuildables = "YES"
+      buildImplicitDependencies = "YES">
+      <BuildActionEntries>
+         <BuildActionEntry
+            buildForTesting = "YES"
+            buildForRunning = "YES"
+            buildForProfiling = "YES"
+            buildForArchiving = "YES"
+            buildForAnalyzing = "YES">
+            <BuildableReference
+               BuildableIdentifier = "primary"
+               BlueprintIdentifier = "57071453919863518A53B6C49465271E"
+               BuildableName = "TestClient.framework"
+               BlueprintName = "TestClient"
+               ReferencedContainer = "container:TestClient.xcodeproj">
+            </BuildableReference>
+         </BuildActionEntry>
+      </BuildActionEntries>
+   </BuildAction>
+   <TestAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      shouldUseLaunchSchemeArgsEnv = "YES">
+      <Testables>
+      </Testables>
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "57071453919863518A53B6C49465271E"
+            BuildableName = "TestClient.framework"
+            BlueprintName = "TestClient"
+            ReferencedContainer = "container:TestClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </TestAction>
+   <LaunchAction
+      buildConfiguration = "Debug"
+      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
+      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
+      launchStyle = "0"
+      useCustomWorkingDirectory = "NO"
+      ignoresPersistentStateOnLaunch = "NO"
+      debugDocumentVersioning = "YES"
+      debugServiceExtension = "internal"
+      allowLocationSimulation = "YES">
+      <MacroExpansion>
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "57071453919863518A53B6C49465271E"
+            BuildableName = "TestClient.framework"
+            BlueprintName = "TestClient"
+            ReferencedContainer = "container:TestClient.xcodeproj">
+         </BuildableReference>
+      </MacroExpansion>
+      <CommandLineArguments>
+      </CommandLineArguments>
+      <AdditionalOptions>
+      </AdditionalOptions>
+   </LaunchAction>
+   <ProfileAction
+      buildConfiguration = "Release"
+      shouldUseLaunchSchemeArgsEnv = "YES"
+      savedToolIdentifier = ""
+      useCustomWorkingDirectory = "NO"
+      debugDocumentVersioning = "YES">
+      <BuildableProductRunnable
+         runnableDebuggingMode = "0">
+         <BuildableReference
+            BuildableIdentifier = "primary"
+            BlueprintIdentifier = "57071453919863518A53B6C49465271E"
+            BuildableName = "TestClient.framework"
+            BlueprintName = "TestClient"
+            ReferencedContainer = "container:TestClient.xcodeproj">
+         </BuildableReference>
+      </BuildableProductRunnable>
+      <CommandLineArguments>
+      </CommandLineArguments>
+   </ProfileAction>
+   <AnalyzeAction
+      buildConfiguration = "Debug">
+   </AnalyzeAction>
+   <ArchiveAction
+      buildConfiguration = "Release"
+      revealArchiveInOrganizer = "YES">
+   </ArchiveAction>
+</Scheme>
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIHelper.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIHelper.swift
index 3c7b53f81496ad34ff0acca141c0a3ab4b707a1d..75dea24395752b328facec8e593fcac7ea470217 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIHelper.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIHelper.swift
@@ -7,7 +7,7 @@
 import Foundation
 
 public struct APIHelper {
-    public static func rejectNil(_ source: [String:Any?]) -> [String:Any]? {
+    public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? {
         let destination = source.reduce(into: [String: Any]()) { (result, item) in
             if let value = item.value {
                 result[item.key] = value
@@ -20,17 +20,17 @@ public struct APIHelper {
         return destination
     }
 
-    public static func rejectNilHeaders(_ source: [String:Any?]) -> [String:String] {
+    public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] {
         return source.reduce(into: [String: String]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
-                result[item.key] = collection.filter({ $0 != nil }).map{ "\($0!)" }.joined(separator: ",")
+                result[item.key] = collection.filter({ $0 != nil }).map { "\($0!)" }.joined(separator: ",")
             } else if let value: Any = item.value {
                 result[item.key] = "\(value)"
             }
         }
     }
 
-    public static func convertBoolToString(_ source: [String: Any]?) -> [String:Any]? {
+    public static func convertBoolToString(_ source: [String: Any]?) -> [String: Any]? {
         guard let source = source else {
             return nil
         }
@@ -45,8 +45,14 @@ public struct APIHelper {
         })
     }
 
+    public static func mapValueToPathItem(_ source: Any) -> Any {
+        if let collection = source as? Array<Any?> {
+            return collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",")
+        }
+        return source
+    }
 
-    public static func mapValuesToQueryItems(_ source: [String:Any?]) -> [URLQueryItem]? {
+    public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? {
         let destination = source.filter({ $0.value != nil}).reduce(into: [URLQueryItem]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
                 let value = collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",")
@@ -62,4 +68,3 @@ public struct APIHelper {
         return destination
     }
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs.swift
index 88a72b1c672b64a43b2c30e8397981baccf66d45..e60b6154004e8017c7c62d47a493d98405b820fe 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs.swift
@@ -9,22 +9,22 @@ import Foundation
 open class TestClientAPI {
     public static var basePath = "http://api.example.com/basePath"
     public static var credential: URLCredential?
-    public static var customHeaders: [String:String] = [:]
+    public static var customHeaders: [String: String] = [:]
     public static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory()
 }
 
 open class RequestBuilder<T> {
     var credential: URLCredential?
-    var headers: [String:String]
-    public let parameters: [String:Any]?
+    var headers: [String: String]
+    public let parameters: [String: Any]?
     public let isBody: Bool
     public let method: String
     public let URLString: String
 
     /// Optional block to obtain a reference to the request's progress instance when available.
-    public var onProgressReady: ((Progress) -> ())?
+    public var onProgressReady: ((Progress) -> Void)?
 
-    required public init(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         self.method = method
         self.URLString = URLString
         self.parameters = parameters
@@ -34,7 +34,7 @@ open class RequestBuilder<T> {
         addHeaders(TestClientAPI.customHeaders)
     }
 
-    open func addHeaders(_ aHeaders:[String:String]) {
+    open func addHeaders(_ aHeaders: [String: String]) {
         for (header, value) in aHeaders {
             headers[header] = value
         }
@@ -57,5 +57,5 @@ open class RequestBuilder<T> {
 
 public protocol RequestBuilderFactory {
     func getNonDecodableBuilder<T>() -> RequestBuilder<T>.Type
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type
 }
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs/Swift4TestAPI.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs/Swift4TestAPI.swift
index a0b90ee6a879c05f8d846ce1c8081dcdd2c54cbe..a775c2aaaac225330808f208045778b2ced3af74 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs/Swift4TestAPI.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs/Swift4TestAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class Swift4TestAPI {
     /**
      Get all of the models
@@ -17,7 +15,7 @@ open class Swift4TestAPI {
      - parameter clientId: (query) id that represent the Api client 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getAllModels(clientId: String, completion: @escaping ((_ data: GetAllModelsResult?,_ error: Error?) -> Void)) {
+    open class func getAllModels(clientId: String, completion: @escaping ((_ data: GetAllModelsResult?, _ error: Error?) -> Void)) {
         getAllModelsWithRequestBuilder(clientId: clientId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
@@ -33,8 +31,8 @@ open class Swift4TestAPI {
     open class func getAllModelsWithRequestBuilder(clientId: String) -> RequestBuilder<GetAllModelsResult> {
         let path = "/allModels"
         let URLString = TestClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "client_id": clientId
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/AlamofireImplementations.swift
index dac40e9a31cfbf7c6194a337ddd9ab7cafb16b35..04ad02a5ce88e02b302bcdb3f9b02522a5509b5a 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/AlamofireImplementations.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/AlamofireImplementations.swift
@@ -12,7 +12,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
         return AlamofireRequestBuilder<T>.self
     }
 
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type {
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type {
         return AlamofireDecodableRequestBuilder<T>.self
     }
 }
@@ -50,7 +50,7 @@ private struct SynchronizedDictionary<K: Hashable, V> {
 private var managerStore = SynchronizedDictionary<String, Alamofire.SessionManager>()
 
 open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
-    required public init(method: String, URLString: String, parameters: [String : Any]?, isBody: Bool, headers: [String : String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         super.init(method: method, URLString: URLString, parameters: parameters, isBody: isBody, headers: headers)
     }
 
@@ -88,17 +88,17 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
      May be overridden by a subclass if you want to control the request
      configuration (e.g. to override the cache policy).
      */
-    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String:String]) -> DataRequest {
+    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) -> DataRequest {
         return manager.request(URLString, method: method, parameters: parameters, encoding: encoding, headers: headers)
     }
 
     override open func execute(_ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
-        let managerId:String = UUID().uuidString
+        let managerId: String = UUID().uuidString
         // Create a new manager for each request to customize its request header
         let manager = createSessionManager()
         managerStore[managerId] = manager
 
-        let encoding:ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
+        let encoding: ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
 
         let xMethod = Alamofire.HTTPMethod(rawValue: method)
         let fileKeys = parameters == nil ? [] : parameters!.filter { $1 is NSURL }
@@ -111,8 +111,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
                     case let fileURL as URL:
                         if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
                             mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
-                        }
-                        else {
+                        } else {
                             mpForm.append(fileURL, withName: k)
                         }
                     case let string as String:
@@ -276,7 +275,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
         return httpHeaders
     }
 
-    fileprivate func getFileName(fromContentDisposition contentDisposition : String?) -> String? {
+    fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? {
 
         guard let contentDisposition = contentDisposition else {
             return nil
@@ -284,7 +283,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
         let items = contentDisposition.components(separatedBy: ";")
 
-        var filename : String? = nil
+        var filename: String? = nil
 
         for contentItem in items {
 
@@ -304,7 +303,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getPath(from url : URL) throws -> String {
+    fileprivate func getPath(from url: URL) throws -> String {
 
         guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else {
             throw DownloadException.requestMissingPath
@@ -318,7 +317,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getURL(from urlRequest : URLRequest) throws -> URL {
+    fileprivate func getURL(from urlRequest: URLRequest) throws -> URL {
 
         guard let url = urlRequest.url else {
             throw DownloadException.requestMissingURL
@@ -329,7 +328,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
 }
 
-fileprivate enum DownloadException : Error {
+private enum DownloadException: Error {
     case responseDataMissing
     case responseFailed
     case requestMissing
@@ -344,7 +343,7 @@ public enum AlamofireDecodableRequestBuilderError: Error {
     case generalError(Error)
 }
 
-open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilder<T> {
+open class AlamofireDecodableRequestBuilder<T: Decodable>: AlamofireRequestBuilder<T> {
 
     override fileprivate func processRequest(request: DataRequest, _ managerId: String, _ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
         if let credential = self.credential {
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/CodableHelper.swift
index 584de8c3d57a78a248749874fabd8245bf33f9fc..111d5a3a8cbe9afe5289cf58aa577d7c8f761a4a 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/CodableHelper.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/CodableHelper.swift
@@ -13,7 +13,7 @@ open class CodableHelper {
 
     public static var dateformatter: DateFormatter?
 
-    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T : Decodable {
+    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable {
         var returnedDecodable: T? = nil
         var returnedError: Error? = nil
 
@@ -39,7 +39,7 @@ open class CodableHelper {
         return (returnedDecodable, returnedError)
     }
 
-    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T : Encodable {
+    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable {
         var returnedData: Data?
         var returnedError: Error? = nil
 
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Configuration.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Configuration.swift
index 516590da5d9e34183fdca8fef2901c7b53ab763b..e1ecb39726e7a8b435a6e688d95ddec9693fc3bc 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Configuration.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Configuration.swift
@@ -7,9 +7,9 @@
 import Foundation
 
 open class Configuration {
-	
+
 	// This value is used to configure the date formatter that is used to serialize dates into JSON format. 
 	// You must set it prior to encoding any dates, and it will only be read once. 
     public static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
-    
-}
\ No newline at end of file
+
+}
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Extensions.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Extensions.swift
index 8bf1829ba806b618d4e918b3c45a67c7a5a98803..24c128daadef77fdadd2629825a2d7ff04016e59 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Extensions.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Extensions.swift
@@ -112,24 +112,24 @@ extension String: CodingKey {
 
 extension KeyedEncodingContainerProtocol {
 
-    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T: Encodable {
         var arrayContainer = nestedUnkeyedContainer(forKey: key)
         try arrayContainer.encode(contentsOf: values)
     }
 
-    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable {
         if let values = values {
             try encodeArray(values, forKey: key)
         }
     }
 
-    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T : Encodable {
+    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T: Encodable {
         for (key, value) in pairs {
             try encode(value, forKey: key)
         }
     }
 
-    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T : Encodable {
+    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T: Encodable {
         if let pairs = pairs {
             try encodeMap(pairs)
         }
@@ -139,7 +139,7 @@ extension KeyedEncodingContainerProtocol {
 
 extension KeyedDecodingContainerProtocol {
 
-    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T : Decodable {
+    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable {
         var tmpArray = [T]()
 
         var nestedContainer = try nestedUnkeyedContainer(forKey: key)
@@ -151,7 +151,7 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T : Decodable {
+    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable {
         var tmpArray: [T]? = nil
 
         if contains(key) {
@@ -161,8 +161,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T : Decodable {
-        var map: [Self.Key : T] = [:]
+    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T: Decodable {
+        var map: [Self.Key: T] = [:]
 
         for key in allKeys {
             if !excludedKeys.contains(key) {
@@ -175,5 +175,3 @@ extension KeyedDecodingContainerProtocol {
     }
 
 }
-
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/JSONEncodingHelper.swift
index 70449515842de48fed6aec10ef246b1ad0f89e8b..3e68bb5d4a9b57609b955025cd250046c16fde0f 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/JSONEncodingHelper.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/JSONEncodingHelper.swift
@@ -10,7 +10,7 @@ import Alamofire
 
 open class JSONEncodingHelper {
 
-    open class func encodingParameters<T:Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
+    open class func encodingParameters<T: Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
         var params: Parameters? = nil
 
         // Encode the Encodable object
@@ -39,5 +39,5 @@ open class JSONEncodingHelper {
 
         return params
     }
-    
+
 }
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models.swift
index 408563890359088c1d97f24053ac1392706457bf..e87ce399c7c8b963ddee0f78a14a70a727751d1a 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models.swift
@@ -10,7 +10,7 @@ protocol JSONEncodable {
     func encodeToJSON() -> Any
 }
 
-public enum ErrorResponse : Error {
+public enum ErrorResponse: Error {
     case error(Int, Data?, Error)
 }
 
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/AllPrimitives.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/AllPrimitives.swift
index 3ce27fcd98f5eea9320500e1a166f91562b1bfb8..0087792f206225dd70ddc235a1c213c1bacfa641 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/AllPrimitives.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/AllPrimitives.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Object which contains lots of different primitive Swagger types */
 
 public struct AllPrimitives: Codable {
@@ -71,6 +70,4 @@ public struct AllPrimitives: Codable {
         self.myInlineStringEnum = myInlineStringEnum
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/BaseCard.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/BaseCard.swift
index 7e4bb2c0cd5a58820af8b6b0e87847cee0249cf2..51055d85739ececf34b2232e2f49d1a3a523cf70 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/BaseCard.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/BaseCard.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is a base card object which uses a &#39;cardType&#39; discriminator. */
 
 public struct BaseCard: Codable {
@@ -18,6 +17,4 @@ public struct BaseCard: Codable {
         self.cardType = cardType
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ErrorInfo.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ErrorInfo.swift
index ae5327eda329d5ce9cd6fe7b2115df00690d4e2e..a603717abe68eb989ce1d3f52adada49a6789d24 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ErrorInfo.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ErrorInfo.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Example Error object */
 
 public struct ErrorInfo: Codable {
@@ -22,6 +21,4 @@ public struct ErrorInfo: Codable {
         self.details = details
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/GetAllModelsResult.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/GetAllModelsResult.swift
index 286c5a7a35bea894e738dcd718ffa3180dfb0d34..cc3992e748af972a62b00e4504c74900be866d91 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/GetAllModelsResult.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/GetAllModelsResult.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Response object containing AllPrimitives object */
 
 public struct GetAllModelsResult: Codable {
@@ -22,6 +21,4 @@ public struct GetAllModelsResult: Codable {
         self.myVariableNameTest = myVariableNameTest
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelDoubleArray.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelDoubleArray.swift
index e6e986dce61d346a78098305a85190e2c351c7cc..9e523219a44694eea7ed4868ea59bbce88d76792 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelDoubleArray.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelDoubleArray.swift
@@ -7,6 +7,5 @@
 
 import Foundation
 
-
 /** This defines an array of doubles. */
 public typealias ModelDoubleArray = [Double]
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelErrorInfoArray.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelErrorInfoArray.swift
index 6656e6abe8c8cab201eb39ed32d42b4a52c2b56a..358c83dc7a9109837f69b45dd03045f681c953ad 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelErrorInfoArray.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelErrorInfoArray.swift
@@ -7,6 +7,5 @@
 
 import Foundation
 
-
 /** This defines an array of ErrorInfo objects. */
 public typealias ModelErrorInfoArray = [ErrorInfo]
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelStringArray.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelStringArray.swift
index 7f0e0cbd13573abaaeb72f2f876b91bec4d85504..6a614cc360192e763d4b3befc1672997ccc648df 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelStringArray.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelStringArray.swift
@@ -7,6 +7,5 @@
 
 import Foundation
 
-
 /** This defines an array of strings. */
 public typealias ModelStringArray = [String]
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithIntAdditionalPropertiesOnly.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithIntAdditionalPropertiesOnly.swift
index 16d9a784fb6de00586074b0894efa8d0c5d3de13..7070e5d16cbf15c0b05c7f36f3eff8fc34ae3687 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithIntAdditionalPropertiesOnly.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithIntAdditionalPropertiesOnly.swift
@@ -7,13 +7,11 @@
 
 import Foundation
 
-
 /** This is an empty model with no properties and only additionalProperties of type int32 */
 
 public struct ModelWithIntAdditionalPropertiesOnly: Codable {
 
-
-    public var additionalProperties: [String:Int] = [:]
+    public var additionalProperties: [String: Int] = [:]
 
     public subscript(key: String) -> Int? {
         get {
@@ -46,7 +44,4 @@ public struct ModelWithIntAdditionalPropertiesOnly: Codable {
         additionalProperties = try container.decodeMap(Int.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithPropertiesAndAdditionalProperties.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithPropertiesAndAdditionalProperties.swift
index d7f2ca1526233a880a3336360c32ec79339510b0..c00da2ea9fe2e654d24c72f8bd216ed57db43681 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithPropertiesAndAdditionalProperties.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithPropertiesAndAdditionalProperties.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is an empty model with no properties and only additionalProperties of type int32 */
 
 public struct ModelWithPropertiesAndAdditionalProperties: Codable {
@@ -31,7 +30,7 @@ public struct ModelWithPropertiesAndAdditionalProperties: Codable {
         self.myPrimitiveArrayReq = myPrimitiveArrayReq
         self.myPrimitiveArrayOpt = myPrimitiveArrayOpt
     }
-    public var additionalProperties: [String:String] = [:]
+    public var additionalProperties: [String: String] = [:]
 
     public subscript(key: String) -> String? {
         get {
@@ -88,7 +87,4 @@ public struct ModelWithPropertiesAndAdditionalProperties: Codable {
         additionalProperties = try container.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithStringAdditionalPropertiesOnly.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithStringAdditionalPropertiesOnly.swift
index ae87d68a229231016c07f05a8c027881e38b110a..81f9dede4310746449d147b226e6e33270946176 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithStringAdditionalPropertiesOnly.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithStringAdditionalPropertiesOnly.swift
@@ -7,13 +7,11 @@
 
 import Foundation
 
-
 /** This is an empty model with no properties and only additionalProperties of type string */
 
 public struct ModelWithStringAdditionalPropertiesOnly: Codable {
 
-
-    public var additionalProperties: [String:String] = [:]
+    public var additionalProperties: [String: String] = [:]
 
     public subscript(key: String) -> String? {
         get {
@@ -46,7 +44,4 @@ public struct ModelWithStringAdditionalPropertiesOnly: Codable {
         additionalProperties = try container.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCard.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCard.swift
index 9ce70e0b95e69e2d9a731d64d1e5d0de65bbd909..0f6036276583f473c5714e6df0cf31dcc2efcda0 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCard.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCard.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is a card object for a Person derived from BaseCard. */
 
 public struct PersonCard: Codable {
@@ -22,6 +21,4 @@ public struct PersonCard: Codable {
         self.lastName = lastName
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCardAllOf.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCardAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..e11d38985a2eaa4cbe7f0a143a70b982e9dbe453
--- /dev/null
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCardAllOf.swift
@@ -0,0 +1,20 @@
+//
+// PersonCardAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct PersonCardAllOf: Codable {
+
+    public var firstName: String?
+    public var lastName: String?
+
+    public init(firstName: String?, lastName: String?) {
+        self.firstName = firstName
+        self.lastName = lastName
+    }
+
+}
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCard.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCard.swift
index 905b80ae5241daae0c17a94bca4a522f1d063e0f..d2926360403971b295127cda7e0f11550569e9f6 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCard.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCard.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is a card object for a Person derived from BaseCard. */
 
 public struct PlaceCard: Codable {
@@ -22,6 +21,4 @@ public struct PlaceCard: Codable {
         self.placeAddress = placeAddress
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCardAllOf.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCardAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..c5e89a15e00f1694445ba6b696bd0bae8841a90f
--- /dev/null
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCardAllOf.swift
@@ -0,0 +1,20 @@
+//
+// PlaceCardAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct PlaceCardAllOf: Codable {
+
+    public var placeName: String?
+    public var placeAddress: String?
+
+    public init(placeName: String?, placeAddress: String?) {
+        self.placeName = placeName
+        self.placeAddress = placeAddress
+    }
+
+}
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleBase.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleBase.swift
index 77f8897cdf3f7ed7dc5dd414cf6fd866ec07f7d3..42b32eee43976280e565bc1334e1142e6867f733 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleBase.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleBase.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is a base class object from which other classes will derive. */
 
 public struct SampleBase: Codable {
@@ -20,6 +19,4 @@ public struct SampleBase: Codable {
         self.baseClassIntegerProp = baseClassIntegerProp
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClass.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClass.swift
index b4e8210bab6b6edb045235e549b84a45b9f0f578..a33ee92f22616b789884630c5033d96e2305b7aa 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClass.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClass.swift
@@ -7,19 +7,11 @@
 
 import Foundation
 
-
 /** This is a subclass defived from the SampleBase class. */
 
 public struct SampleSubClass: Codable {
 
-    public var subClassStringProp: String?
-    public var subClassIntegerProp: Int?
-
-    public init(subClassStringProp: String?, subClassIntegerProp: Int?) {
-        self.subClassStringProp = subClassStringProp
-        self.subClassIntegerProp = subClassIntegerProp
+    public init() {
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClassAllOf.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClassAllOf.swift
new file mode 100644
index 0000000000000000000000000000000000000000..7f52bb9fef4cdba2b182da362a77b6bf27302c6e
--- /dev/null
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClassAllOf.swift
@@ -0,0 +1,20 @@
+//
+// SampleSubClassAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct SampleSubClassAllOf: Codable {
+
+    public var subClassStringProp: String?
+    public var subClassIntegerProp: Int?
+
+    public init(subClassStringProp: String?, subClassIntegerProp: Int?) {
+        self.subClassStringProp = subClassStringProp
+        self.subClassIntegerProp = subClassIntegerProp
+    }
+
+}
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/StringEnum.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/StringEnum.swift
index d4cce19e6d6db22cae0881accb90ae9e37eca8c4..67c1c22deda70513dfe93086de562d8f644157f4 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/StringEnum.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/StringEnum.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum StringEnum: String, Codable {
     case stringenumvalue1 = "stringEnumValue1"
     case stringenumvalue2 = "stringEnumValue2"
diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/VariableNameTest.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/VariableNameTest.swift
index 1248e645c609ca9239eb99ab577fa6a92ea4ae19..6592d3f1eefd9e89ee2957ffbf51e56793236210 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/VariableNameTest.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/VariableNameTest.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This object contains property names which we know will be different from their variable name. Examples of this include snake case property names and property names which are Swift 4 reserved words. */
 
 public struct VariableNameTest: Codable {
@@ -25,12 +24,10 @@ public struct VariableNameTest: Codable {
         self.normalName = normalName
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case exampleName = "example_name"
         case _for = "for"
         case normalName
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIHelper.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIHelper.swift
index 3c7b53f81496ad34ff0acca141c0a3ab4b707a1d..447a87c0942256306e59ebb6a8dfa33bdd83a360 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIHelper.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIHelper.swift
@@ -7,7 +7,7 @@
 import Foundation
 
 public struct APIHelper {
-    public static func rejectNil(_ source: [String:Any?]) -> [String:Any]? {
+    public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? {
         let destination = source.reduce(into: [String: Any]()) { (result, item) in
             if let value = item.value {
                 result[item.key] = value
@@ -20,17 +20,17 @@ public struct APIHelper {
         return destination
     }
 
-    public static func rejectNilHeaders(_ source: [String:Any?]) -> [String:String] {
+    public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] {
         return source.reduce(into: [String: String]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
-                result[item.key] = collection.filter({ $0 != nil }).map{ "\($0!)" }.joined(separator: ",")
+                result[item.key] = collection.filter({ $0 != nil }).map { "\($0!)" }.joined(separator: ",")
             } else if let value: Any = item.value {
                 result[item.key] = "\(value)"
             }
         }
     }
 
-    public static func convertBoolToString(_ source: [String: Any]?) -> [String:Any]? {
+    public static func convertBoolToString(_ source: [String: Any]?) -> [String: Any]? {
         guard let source = source else {
             return nil
         }
@@ -45,8 +45,7 @@ public struct APIHelper {
         })
     }
 
-
-    public static func mapValuesToQueryItems(_ source: [String:Any?]) -> [URLQueryItem]? {
+    public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? {
         let destination = source.filter({ $0.value != nil}).reduce(into: [URLQueryItem]()) { (result, item) in
             if let collection = item.value as? Array<Any?> {
                 let value = collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",")
@@ -62,4 +61,3 @@ public struct APIHelper {
         return destination
     }
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIs.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIs.swift
index 6835520c99042e1e4886c786ba987307672049ba..718622c4db485380c82871dd6efe3ea6b30b7360 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIs.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIs.swift
@@ -9,22 +9,22 @@ import Foundation
 open class TestClientAPI {
     open static var basePath = "http://api.example.com/basePath"
     open static var credential: URLCredential?
-    open static var customHeaders: [String:String] = [:]
+    open static var customHeaders: [String: String] = [:]
     open static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory()
 }
 
 open class RequestBuilder<T> {
     var credential: URLCredential?
-    var headers: [String:String]
-    public let parameters: [String:Any]?
+    var headers: [String: String]
+    public let parameters: [String: Any]?
     public let isBody: Bool
     public let method: String
     public let URLString: String
 
     /// Optional block to obtain a reference to the request's progress instance when available.
-    public var onProgressReady: ((Progress) -> ())?
+    public var onProgressReady: ((Progress) -> Void)?
 
-    required public init(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         self.method = method
         self.URLString = URLString
         self.parameters = parameters
@@ -34,7 +34,7 @@ open class RequestBuilder<T> {
         addHeaders(TestClientAPI.customHeaders)
     }
 
-    open func addHeaders(_ aHeaders:[String:String]) {
+    open func addHeaders(_ aHeaders: [String: String]) {
         for (header, value) in aHeaders {
             headers[header] = value
         }
@@ -57,5 +57,5 @@ open class RequestBuilder<T> {
 
 public protocol RequestBuilderFactory {
     func getNonDecodableBuilder<T>() -> RequestBuilder<T>.Type
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type
 }
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIs/Swift4TestAPI.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIs/Swift4TestAPI.swift
index 9a067900179bd36fa0e6931d585dcdc31780a0cb..bcdaad6241a65e245666f4a6142394bb36b5f561 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIs/Swift4TestAPI.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/APIs/Swift4TestAPI.swift
@@ -8,8 +8,6 @@
 import Foundation
 import Alamofire
 
-
-
 open class Swift4TestAPI {
     /**
      Get all of the models
@@ -17,13 +15,12 @@ open class Swift4TestAPI {
      - parameter clientId: (query) id that represent the Api client 
      - parameter completion: completion handler to receive the data and the error objects
      */
-    open class func getAllModels(clientId: String, completion: @escaping ((_ data: GetAllModelsResult?,_ error: Error?) -> Void)) {
+    open class func getAllModels(clientId: String, completion: @escaping ((_ data: GetAllModelsResult?, _ error: Error?) -> Void)) {
         getAllModelsWithRequestBuilder(clientId: clientId).execute { (response, error) -> Void in
             completion(response?.body, error)
         }
     }
 
-
     /**
      Get all of the models
      - GET /allModels
@@ -118,8 +115,8 @@ open class Swift4TestAPI {
     open class func getAllModelsWithRequestBuilder(clientId: String) -> RequestBuilder<GetAllModelsResult> {
         let path = "/allModels"
         let URLString = TestClientAPI.basePath + path
-        let parameters: [String:Any]? = nil
-        
+        let parameters: [String: Any]? = nil
+
         var url = URLComponents(string: URLString)
         url?.queryItems = APIHelper.mapValuesToQueryItems([
             "client_id": clientId
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/AlamofireImplementations.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/AlamofireImplementations.swift
index 280b4e53389d3e068dee7b9b5a390002827d5762..8fc48ccbedbd1c046b2df5affe5696f14d5bdbda 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/AlamofireImplementations.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/AlamofireImplementations.swift
@@ -12,7 +12,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
         return AlamofireRequestBuilder<T>.self
     }
 
-    func getBuilder<T:Decodable>() -> RequestBuilder<T>.Type {
+    func getBuilder<T: Decodable>() -> RequestBuilder<T>.Type {
         return AlamofireDecodableRequestBuilder<T>.self
     }
 }
@@ -21,7 +21,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory {
 private var managerStore: [String: Alamofire.SessionManager] = [:]
 
 open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
-    required public init(method: String, URLString: String, parameters: [String : Any]?, isBody: Bool, headers: [String : String] = [:]) {
+    required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) {
         super.init(method: method, URLString: URLString, parameters: parameters, isBody: isBody, headers: headers)
     }
 
@@ -50,17 +50,17 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
      May be overridden by a subclass if you want to control the request
      configuration (e.g. to override the cache policy).
      */
-    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String:String]) -> DataRequest {
+    open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) -> DataRequest {
         return manager.request(URLString, method: method, parameters: parameters, encoding: encoding, headers: headers)
     }
 
     override open func execute(_ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
-        let managerId:String = UUID().uuidString
+        let managerId: String = UUID().uuidString
         // Create a new manager for each request to customize its request header
         let manager = createSessionManager()
         managerStore[managerId] = manager
 
-        let encoding:ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
+        let encoding: ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding()
 
         let xMethod = Alamofire.HTTPMethod(rawValue: method)
         let fileKeys = parameters == nil ? [] : parameters!.filter { $1 is NSURL }
@@ -73,8 +73,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
                     case let fileURL as URL:
                         if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) {
                             mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType)
-                        }
-                        else {
+                        } else {
                             mpForm.append(fileURL, withName: k)
                         }
                     case let string as String:
@@ -238,7 +237,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
         return httpHeaders
     }
 
-    fileprivate func getFileName(fromContentDisposition contentDisposition : String?) -> String? {
+    fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? {
 
         guard let contentDisposition = contentDisposition else {
             return nil
@@ -246,7 +245,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
         let items = contentDisposition.components(separatedBy: ";")
 
-        var filename : String? = nil
+        var filename: String?
 
         for contentItem in items {
 
@@ -257,7 +256,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
             filename = contentItem
             return filename?
-                .replacingCharacters(in: range, with:"")
+                .replacingCharacters(in: range, with: "")
                 .replacingOccurrences(of: "\"", with: "")
                 .trimmingCharacters(in: .whitespacesAndNewlines)
         }
@@ -266,7 +265,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getPath(from url : URL) throws -> String {
+    fileprivate func getPath(from url: URL) throws -> String {
 
         guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else {
             throw DownloadException.requestMissingPath
@@ -280,7 +279,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
     }
 
-    fileprivate func getURL(from urlRequest : URLRequest) throws -> URL {
+    fileprivate func getURL(from urlRequest: URLRequest) throws -> URL {
 
         guard let url = urlRequest.url else {
             throw DownloadException.requestMissingURL
@@ -291,7 +290,7 @@ open class AlamofireRequestBuilder<T>: RequestBuilder<T> {
 
 }
 
-fileprivate enum DownloadException : Error {
+private enum DownloadException: Error {
     case responseDataMissing
     case responseFailed
     case requestMissing
@@ -306,7 +305,7 @@ public enum AlamofireDecodableRequestBuilderError: Error {
     case generalError(Error)
 }
 
-open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilder<T> {
+open class AlamofireDecodableRequestBuilder<T: Decodable>: AlamofireRequestBuilder<T> {
 
     override fileprivate func processRequest(request: DataRequest, _ managerId: String, _ completion: @escaping (_ response: Response<T>?, _ error: Error?) -> Void) {
         if let credential = self.credential {
@@ -398,7 +397,7 @@ open class AlamofireDecodableRequestBuilder<T:Decodable>: AlamofireRequestBuilde
                     return
                 }
 
-                var responseObj: Response<T>? = nil
+                var responseObj: Response<T>?
 
                 let decodeResult: (decodableObj: T?, error: Error?) = CodableHelper.decode(T.self, from: data)
                 if decodeResult.error == nil {
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/CodableHelper.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/CodableHelper.swift
index 2d50e463ae114b433914249f7a61bd0f7851565a..27e6a2876193bc8786c2ceab20217b4ea03cfa97 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/CodableHelper.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/CodableHelper.swift
@@ -13,9 +13,9 @@ open class CodableHelper {
 
     open static var dateformatter: DateFormatter?
 
-    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T : Decodable {
-        var returnedDecodable: T? = nil
-        var returnedError: Error? = nil
+    open class func decode<T>(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable {
+        var returnedDecodable: T?
+        var returnedError: Error?
 
         let decoder = JSONDecoder()
         if let df = self.dateformatter {
@@ -39,9 +39,9 @@ open class CodableHelper {
         return (returnedDecodable, returnedError)
     }
 
-    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T : Encodable {
+    open class func encode<T>(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable {
         var returnedData: Data?
-        var returnedError: Error? = nil
+        var returnedError: Error?
 
         let encoder = JSONEncoder()
         if prettyPrint {
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Configuration.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Configuration.swift
index f8180752b67bab65e4f0a09c02f41b84743536b9..eb61a73c0b7c22acae21d861cd7a70e820ece3d3 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Configuration.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Configuration.swift
@@ -7,9 +7,9 @@
 import Foundation
 
 open class Configuration {
-	
+
 	// This value is used to configure the date formatter that is used to serialize dates into JSON format. 
 	// You must set it prior to encoding any dates, and it will only be read once. 
     open static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
-    
-}
\ No newline at end of file
+
+}
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Extensions.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Extensions.swift
index abe218b4e7ac6ad8c440cd67d9d454b788b70033..47967f92487a0fb03ed3117398a4062cc7793cb5 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Extensions.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Extensions.swift
@@ -106,24 +106,24 @@ extension String: CodingKey {
 
 extension KeyedEncodingContainerProtocol {
 
-    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArray<T>(_ values: [T], forKey key: Self.Key) throws where T: Encodable {
         var arrayContainer = nestedUnkeyedContainer(forKey: key)
         try arrayContainer.encode(contentsOf: values)
     }
 
-    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T : Encodable {
+    public mutating func encodeArrayIfPresent<T>(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable {
         if let values = values {
             try encodeArray(values, forKey: key)
         }
     }
 
-    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T : Encodable {
+    public mutating func encodeMap<T>(_ pairs: [Self.Key: T]) throws where T: Encodable {
         for (key, value) in pairs {
             try encode(value, forKey: key)
         }
     }
 
-    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T : Encodable {
+    public mutating func encodeMapIfPresent<T>(_ pairs: [Self.Key: T]?) throws where T: Encodable {
         if let pairs = pairs {
             try encodeMap(pairs)
         }
@@ -133,7 +133,7 @@ extension KeyedEncodingContainerProtocol {
 
 extension KeyedDecodingContainerProtocol {
 
-    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T : Decodable {
+    public func decodeArray<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable {
         var tmpArray = [T]()
 
         var nestedContainer = try nestedUnkeyedContainer(forKey: key)
@@ -145,8 +145,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T : Decodable {
-        var tmpArray: [T]? = nil
+    public func decodeArrayIfPresent<T>(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable {
+        var tmpArray: [T]?
 
         if contains(key) {
             tmpArray = try decodeArray(T.self, forKey: key)
@@ -155,8 +155,8 @@ extension KeyedDecodingContainerProtocol {
         return tmpArray
     }
 
-    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T : Decodable {
-        var map: [Self.Key : T] = [:]
+    public func decodeMap<T>(_ type: T.Type, excludedKeys: Set<Self.Key>) throws -> [Self.Key: T] where T: Decodable {
+        var map: [Self.Key: T] = [:]
 
         for key in allKeys {
             if !excludedKeys.contains(key) {
@@ -169,5 +169,3 @@ extension KeyedDecodingContainerProtocol {
     }
 
 }
-
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/JSONEncodableEncoding.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/JSONEncodableEncoding.swift
index ca05906d4206556e58f13d08ccb7b341173878e7..fb76bbed26f7be668cd3094c44fb6887b30b9828 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/JSONEncodableEncoding.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/JSONEncodableEncoding.swift
@@ -42,7 +42,7 @@ public struct JSONDataEncoding: ParameterEncoding {
     }
 
     public static func encodingParameters(jsonData: Data?) -> Parameters? {
-        var returnedParams: Parameters? = nil
+        var returnedParams: Parameters?
         if let jsonData = jsonData, !jsonData.isEmpty {
             var params = Parameters()
             params[jsonDataKey] = jsonData
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/JSONEncodingHelper.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/JSONEncodingHelper.swift
index 70449515842de48fed6aec10ef246b1ad0f89e8b..7bd1267e95f3a182e28babbd80281feaf0ae6bce 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/JSONEncodingHelper.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/JSONEncodingHelper.swift
@@ -10,8 +10,8 @@ import Alamofire
 
 open class JSONEncodingHelper {
 
-    open class func encodingParameters<T:Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
-        var params: Parameters? = nil
+    open class func encodingParameters<T: Encodable>(forEncodableObject encodableObj: T?) -> Parameters? {
+        var params: Parameters?
 
         // Encode the Encodable object
         if let encodableObj = encodableObj {
@@ -25,7 +25,7 @@ open class JSONEncodingHelper {
     }
 
     open class func encodingParameters(forEncodableObject encodableObj: Any?) -> Parameters? {
-        var params: Parameters? = nil
+        var params: Parameters?
 
         if let encodableObj = encodableObj {
             do {
@@ -39,5 +39,5 @@ open class JSONEncodingHelper {
 
         return params
     }
-    
+
 }
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models.swift
index 42f8186ae4afeb4db406efa3c353a9684901089b..9d4101c3cd402dc1ccb1a351ac6a0941da2e791c 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models.swift
@@ -10,7 +10,7 @@ protocol JSONEncodable {
     func encodeToJSON() -> Any
 }
 
-public enum ErrorResponse : Error {
+public enum ErrorResponse: Error {
     case error(Int, Data?, Error)
 }
 
@@ -27,7 +27,7 @@ open class Response<T> {
 
     public convenience init(response: HTTPURLResponse, body: T?) {
         let rawHeader = response.allHeaderFields
-        var header = [String:String]()
+        var header = [String: String]()
         for case let (key, value) as (String, String) in rawHeader {
             header[key] = value
         }
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/AllPrimitives.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/AllPrimitives.swift
index 3ce27fcd98f5eea9320500e1a166f91562b1bfb8..0087792f206225dd70ddc235a1c213c1bacfa641 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/AllPrimitives.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/AllPrimitives.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Object which contains lots of different primitive Swagger types */
 
 public struct AllPrimitives: Codable {
@@ -71,6 +70,4 @@ public struct AllPrimitives: Codable {
         self.myInlineStringEnum = myInlineStringEnum
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/BaseCard.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/BaseCard.swift
index 7e4bb2c0cd5a58820af8b6b0e87847cee0249cf2..51055d85739ececf34b2232e2f49d1a3a523cf70 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/BaseCard.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/BaseCard.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is a base card object which uses a &#39;cardType&#39; discriminator. */
 
 public struct BaseCard: Codable {
@@ -18,6 +17,4 @@ public struct BaseCard: Codable {
         self.cardType = cardType
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ErrorInfo.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ErrorInfo.swift
index ae5327eda329d5ce9cd6fe7b2115df00690d4e2e..a603717abe68eb989ce1d3f52adada49a6789d24 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ErrorInfo.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ErrorInfo.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Example Error object */
 
 public struct ErrorInfo: Codable {
@@ -22,6 +21,4 @@ public struct ErrorInfo: Codable {
         self.details = details
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/GetAllModelsResult.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/GetAllModelsResult.swift
index 286c5a7a35bea894e738dcd718ffa3180dfb0d34..cc3992e748af972a62b00e4504c74900be866d91 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/GetAllModelsResult.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/GetAllModelsResult.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** Response object containing AllPrimitives object */
 
 public struct GetAllModelsResult: Codable {
@@ -22,6 +21,4 @@ public struct GetAllModelsResult: Codable {
         self.myVariableNameTest = myVariableNameTest
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelDoubleArray.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelDoubleArray.swift
index e6e986dce61d346a78098305a85190e2c351c7cc..9e523219a44694eea7ed4868ea59bbce88d76792 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelDoubleArray.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelDoubleArray.swift
@@ -7,6 +7,5 @@
 
 import Foundation
 
-
 /** This defines an array of doubles. */
 public typealias ModelDoubleArray = [Double]
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelErrorInfoArray.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelErrorInfoArray.swift
index 6656e6abe8c8cab201eb39ed32d42b4a52c2b56a..358c83dc7a9109837f69b45dd03045f681c953ad 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelErrorInfoArray.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelErrorInfoArray.swift
@@ -7,6 +7,5 @@
 
 import Foundation
 
-
 /** This defines an array of ErrorInfo objects. */
 public typealias ModelErrorInfoArray = [ErrorInfo]
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelStringArray.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelStringArray.swift
index 7f0e0cbd13573abaaeb72f2f876b91bec4d85504..6a614cc360192e763d4b3befc1672997ccc648df 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelStringArray.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelStringArray.swift
@@ -7,6 +7,5 @@
 
 import Foundation
 
-
 /** This defines an array of strings. */
 public typealias ModelStringArray = [String]
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithIntAdditionalPropertiesOnly.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithIntAdditionalPropertiesOnly.swift
index bad857a6cfe42947a51e83eba6aa35500836d8cb..35834374b0fbe4d2ac45cde1e17d5e03fd444ea8 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithIntAdditionalPropertiesOnly.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithIntAdditionalPropertiesOnly.swift
@@ -7,13 +7,11 @@
 
 import Foundation
 
-
 /** This is an empty model with no properties and only additionalProperties of type int32 */
 
 public struct ModelWithIntAdditionalPropertiesOnly: Codable {
 
-
-    public var additionalProperties: [String:Int] = [:]
+    public var additionalProperties: [String: Int] = [:]
 
     public subscript(key: String) -> Int? {
         get {
@@ -46,7 +44,4 @@ public struct ModelWithIntAdditionalPropertiesOnly: Codable {
         additionalProperties = try container.decodeMap(Int.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithPropertiesAndAdditionalProperties.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithPropertiesAndAdditionalProperties.swift
index dac9f4a6e20da14b250e833933b32b4f9c6adc60..de3ca374508a4728a1235a0257f7a85387a8899e 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithPropertiesAndAdditionalProperties.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithPropertiesAndAdditionalProperties.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is an empty model with no properties and only additionalProperties of type int32 */
 
 public struct ModelWithPropertiesAndAdditionalProperties: Codable {
@@ -31,7 +30,7 @@ public struct ModelWithPropertiesAndAdditionalProperties: Codable {
         self.myPrimitiveArrayReq = myPrimitiveArrayReq
         self.myPrimitiveArrayOpt = myPrimitiveArrayOpt
     }
-    public var additionalProperties: [String:String] = [:]
+    public var additionalProperties: [String: String] = [:]
 
     public subscript(key: String) -> String? {
         get {
@@ -88,7 +87,4 @@ public struct ModelWithPropertiesAndAdditionalProperties: Codable {
         additionalProperties = try container.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithStringAdditionalPropertiesOnly.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithStringAdditionalPropertiesOnly.swift
index ebc3c48d85646ea181ca139c82e26fdada76df11..5f085f47ae3d6d9e396a878f66d4d4d47128ce02 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithStringAdditionalPropertiesOnly.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/ModelWithStringAdditionalPropertiesOnly.swift
@@ -7,13 +7,11 @@
 
 import Foundation
 
-
 /** This is an empty model with no properties and only additionalProperties of type string */
 
 public struct ModelWithStringAdditionalPropertiesOnly: Codable {
 
-
-    public var additionalProperties: [String:String] = [:]
+    public var additionalProperties: [String: String] = [:]
 
     public subscript(key: String) -> String? {
         get {
@@ -46,7 +44,4 @@ public struct ModelWithStringAdditionalPropertiesOnly: Codable {
         additionalProperties = try container.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys)
     }
 
-
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/PersonCard.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/PersonCard.swift
index b2e7ea67c5c7b21550a932b86c40792aa0b6a634..dd4196af071b5e753ddb4ea1d9fed70a4aa34871 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/PersonCard.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/PersonCard.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is an card object for a Person derived from BaseCard. */
 
 public struct PersonCard: Codable {
@@ -22,6 +21,4 @@ public struct PersonCard: Codable {
         self.lastName = lastName
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/PlaceCard.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/PlaceCard.swift
index fa48a17c21cc314b42c316d17f229b571985d659..c1435ae76dbed5de1bfd72aa4711da26c66c210e 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/PlaceCard.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/PlaceCard.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is an card object for a Person derived from BaseCard. */
 
 public struct PlaceCard: Codable {
@@ -22,6 +21,4 @@ public struct PlaceCard: Codable {
         self.placeAddress = placeAddress
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/SampleBase.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/SampleBase.swift
index 49c5f1f662564de213aac5155147810462b182c7..aea865668028a857913eb8d38c40a3d015173670 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/SampleBase.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/SampleBase.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is an base class object from which other classes will derive. */
 
 public struct SampleBase: Codable {
@@ -20,6 +19,4 @@ public struct SampleBase: Codable {
         self.baseClassIntegerProp = baseClassIntegerProp
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/SampleSubClass.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/SampleSubClass.swift
index 582d7d2feee187156e2b46ee4e3e841a1339ca2b..fa000279e04e0b4b7a30f2aad7f13cc8022f6c3d 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/SampleSubClass.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/SampleSubClass.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This is an subclass defived from the SampleBase class. */
 
 public struct SampleSubClass: Codable {
@@ -24,6 +23,4 @@ public struct SampleSubClass: Codable {
         self.subClassIntegerProp = subClassIntegerProp
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/StringEnum.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/StringEnum.swift
index d4cce19e6d6db22cae0881accb90ae9e37eca8c4..67c1c22deda70513dfe93086de562d8f644157f4 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/StringEnum.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/StringEnum.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 public enum StringEnum: String, Codable {
     case stringenumvalue1 = "stringEnumValue1"
     case stringenumvalue2 = "stringEnumValue2"
diff --git a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/VariableNameTest.swift b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/VariableNameTest.swift
index 1248e645c609ca9239eb99ab577fa6a92ea4ae19..6592d3f1eefd9e89ee2957ffbf51e56793236210 100644
--- a/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/VariableNameTest.swift
+++ b/samples/client/test/swift4/default/TestClient/Classes/Swaggers/Models/VariableNameTest.swift
@@ -7,7 +7,6 @@
 
 import Foundation
 
-
 /** This object contains property names which we know will be different from their variable name. Examples of this include snake case property names and property names which are Swift 4 reserved words. */
 
 public struct VariableNameTest: Codable {
@@ -25,12 +24,10 @@ public struct VariableNameTest: Codable {
         self.normalName = normalName
     }
 
-    public enum CodingKeys: String, CodingKey { 
+    public enum CodingKeys: String, CodingKey {
         case exampleName = "example_name"
         case _for = "for"
         case normalName
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Alamofire.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Alamofire.swift
index e9716131ad95c7c94df797a9489ecf9c0a063f63..e28ff5f332d3c06ade85ec7f1bbf5a289fb2ad79 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Alamofire.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Alamofire.swift
@@ -135,8 +135,7 @@ public func request(
     parameters: Parameters? = nil,
     encoding: ParameterEncoding = URLEncoding.default,
     headers: HTTPHeaders? = nil)
-    -> DataRequest
-{
+    -> DataRequest {
     return SessionManager.default.request(
         url,
         method: method,
@@ -183,8 +182,7 @@ public func download(
     encoding: ParameterEncoding = URLEncoding.default,
     headers: HTTPHeaders? = nil,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(
         url,
         method: method,
@@ -209,8 +207,7 @@ public func download(
 public func download(
     _ urlRequest: URLRequestConvertible,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(urlRequest, to: destination)
 }
 
@@ -239,8 +236,7 @@ public func download(
 public func download(
     resumingWith resumeData: Data,
     to destination: DownloadRequest.DownloadFileDestination? = nil)
-    -> DownloadRequest
-{
+    -> DownloadRequest {
     return SessionManager.default.download(resumingWith: resumeData, to: destination)
 }
 
@@ -263,8 +259,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(fileURL, to: url, method: method, headers: headers)
 }
 
@@ -297,8 +292,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(data, to: url, method: method, headers: headers)
 }
 
@@ -331,8 +325,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil)
-    -> UploadRequest
-{
+    -> UploadRequest {
     return SessionManager.default.upload(stream, to: url, method: method, headers: headers)
 }
 
@@ -379,8 +372,7 @@ public func upload(
     to url: URLConvertible,
     method: HTTPMethod = .post,
     headers: HTTPHeaders? = nil,
-    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?)
-{
+    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) {
     return SessionManager.default.upload(
         multipartFormData: multipartFormData,
         usingThreshold: encodingMemoryThreshold,
@@ -416,8 +408,7 @@ public func upload(
     multipartFormData: @escaping (MultipartFormData) -> Void,
     usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold,
     with urlRequest: URLRequestConvertible,
-    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?)
-{
+    encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) {
     return SessionManager.default.upload(
         multipartFormData: multipartFormData,
         usingThreshold: encodingMemoryThreshold,
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/MultipartFormData.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/MultipartFormData.swift
index ba02d24f23fe873eee55cb8618ee6a5be9b45b18..7f559f351c1b9535de6dda25fc803d0ad99400fc 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/MultipartFormData.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/MultipartFormData.swift
@@ -275,8 +275,7 @@ open class MultipartFormData {
             }
 
             bodyContentLength = fileSize.uint64Value
-        }
-        catch {
+        } catch {
             setBodyPartError(withReason: .bodyPartFileSizeQueryFailedWithError(forURL: fileURL, error: error))
             return
         }
@@ -312,8 +311,7 @@ open class MultipartFormData {
         withLength length: UInt64,
         name: String,
         fileName: String,
-        mimeType: String)
-    {
+        mimeType: String) {
         let headers = contentHeaders(withName: name, fileName: fileName, mimeType: mimeType)
         append(stream, withLength: length, headers: headers)
     }
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/NetworkReachabilityManager.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/NetworkReachabilityManager.swift
index cdb5a02d313763e92f99feb6dd2caef6f85e1edf..834c21ed07b614536a3db1384b5d469de62e5bf3 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/NetworkReachabilityManager.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/NetworkReachabilityManager.swift
@@ -146,8 +146,7 @@ public class NetworkReachabilityManager {
         context.info = Unmanaged.passUnretained(self).toOpaque()
 
         let callbackEnabled = SCNetworkReachabilitySetCallback(
-            reachability,
-            { (_, flags, info) in
+            reachability, { (_, flags, info) in
                 let reachability = Unmanaged<NetworkReachabilityManager>.fromOpaque(info!).takeUnretainedValue()
                 reachability.notifyListener(flags)
             },
@@ -216,8 +215,7 @@ extension NetworkReachabilityManager.NetworkReachabilityStatus: Equatable {}
 public func ==(
     lhs: NetworkReachabilityManager.NetworkReachabilityStatus,
     rhs: NetworkReachabilityManager.NetworkReachabilityStatus)
-    -> Bool
-{
+    -> Bool {
     switch (lhs, rhs) {
     case (.unknown, .unknown):
         return true
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ParameterEncoding.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ParameterEncoding.swift
index dabb56223cfbdc351e89f037691b6c881d5bfd42..0cbe7139dd6d3fd5bdcd409a03f19628cd2e3462 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ParameterEncoding.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ParameterEncoding.swift
@@ -384,8 +384,7 @@ public struct PropertyListEncoding: ParameterEncoding {
     /// - returns: The new `PropertyListEncoding` instance.
     public init(
         format: PropertyListSerialization.PropertyListFormat = .xml,
-        options: PropertyListSerialization.WriteOptions = 0)
-    {
+        options: PropertyListSerialization.WriteOptions = 0) {
         self.format = format
         self.options = options
     }
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Request.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Request.swift
index d93c52d100db09a2122919d6b6fc06e334539db8..8ed59add4db91564b1670b053d2c7c95f551b3a1 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Request.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Request.swift
@@ -161,8 +161,7 @@ open class Request {
         user: String,
         password: String,
         persistence: URLCredential.Persistence = .forSession)
-        -> Self
-    {
+        -> Self {
         let credential = URLCredential(user: user, password: password, persistence: persistence)
         return authenticate(usingCredential: credential)
     }
@@ -537,8 +536,7 @@ open class DownloadRequest: Request {
     open class func suggestedDownloadDestination(
         for directory: FileManager.SearchPathDirectory = .documentDirectory,
         in domain: FileManager.SearchPathDomainMask = .userDomainMask)
-        -> DownloadFileDestination
-    {
+        -> DownloadFileDestination {
         return { temporaryURL, response in
             let directoryURLs = FileManager.default.urls(for: directory, in: domain)
 
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Response.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Response.swift
index 703eeb4d368ae9a25002e75253279329c5f42b50..dbfb3c03ae696f09608d6c6fa7642dd2b34eb3d1 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Response.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Response.swift
@@ -58,8 +58,7 @@ public struct DefaultDataResponse {
         data: Data?,
         error: Error?,
         timeline: Timeline = Timeline(),
-        metrics: AnyObject? = nil)
-    {
+        metrics: AnyObject? = nil) {
         self.request = request
         self.response = response
         self.data = data
@@ -109,8 +108,7 @@ public struct DataResponse<Value> {
         response: HTTPURLResponse?,
         data: Data?,
         result: Result<Value>,
-        timeline: Timeline = Timeline())
-    {
+        timeline: Timeline = Timeline()) {
         self.request = request
         self.response = response
         self.data = data
@@ -247,8 +245,7 @@ public struct DefaultDownloadResponse {
         resumeData: Data?,
         error: Error?,
         timeline: Timeline = Timeline(),
-        metrics: AnyObject? = nil)
-    {
+        metrics: AnyObject? = nil) {
         self.request = request
         self.response = response
         self.temporaryURL = temporaryURL
@@ -310,8 +307,7 @@ public struct DownloadResponse<Value> {
         destinationURL: URL?,
         resumeData: Data?,
         result: Result<Value>,
-        timeline: Timeline = Timeline())
-    {
+        timeline: Timeline = Timeline()) {
         self.request = request
         self.response = response
         self.temporaryURL = temporaryURL
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ResponseSerialization.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ResponseSerialization.swift
index 1f29ed85043b98385e7e8a05a1d45898eea943ee..76d905997cdafc2aa8b9e835df7b04d41317ba6f 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ResponseSerialization.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ResponseSerialization.swift
@@ -144,8 +144,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         responseSerializer: T,
         completionHandler: @escaping (DataResponse<T.SerializedObject>) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             let result = responseSerializer.serializeResponse(
                 self.request,
@@ -182,8 +181,7 @@ extension DownloadRequest {
     public func response(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DefaultDownloadResponse) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             (queue ?? DispatchQueue.main).async {
                 var downloadResponse = DefaultDownloadResponse(
@@ -218,8 +216,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         responseSerializer: T,
         completionHandler: @escaping (DownloadResponse<T.SerializedObject>) -> Void)
-        -> Self
-    {
+        -> Self {
         delegate.queue.addOperation {
             let result = responseSerializer.serializeResponse(
                 self.request,
@@ -289,8 +286,7 @@ extension DataRequest {
     public func responseData(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DataResponse<Data>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.dataResponseSerializer(),
@@ -329,8 +325,7 @@ extension DownloadRequest {
     public func responseData(
         queue: DispatchQueue? = nil,
         completionHandler: @escaping (DownloadResponse<Data>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.dataResponseSerializer(),
@@ -356,8 +351,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<String>
-    {
+        -> Result<String> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success("") }
@@ -411,8 +405,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         encoding: String.Encoding? = nil,
         completionHandler: @escaping (DataResponse<String>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.stringResponseSerializer(encoding: encoding),
@@ -459,8 +452,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         encoding: String.Encoding? = nil,
         completionHandler: @escaping (DownloadResponse<String>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.stringResponseSerializer(encoding: encoding),
@@ -486,8 +478,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<Any>
-    {
+        -> Result<Any> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) }
@@ -514,8 +505,7 @@ extension DataRequest {
     /// - returns: A JSON object response serializer.
     public static func jsonResponseSerializer(
         options: JSONSerialization.ReadingOptions = .allowFragments)
-        -> DataResponseSerializer<Any>
-    {
+        -> DataResponseSerializer<Any> {
         return DataResponseSerializer { _, response, data, error in
             return Request.serializeResponseJSON(options: options, response: response, data: data, error: error)
         }
@@ -532,8 +522,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         options: JSONSerialization.ReadingOptions = .allowFragments,
         completionHandler: @escaping (DataResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.jsonResponseSerializer(options: options),
@@ -551,8 +540,7 @@ extension DownloadRequest {
     /// - returns: A JSON object response serializer.
     public static func jsonResponseSerializer(
         options: JSONSerialization.ReadingOptions = .allowFragments)
-        -> DownloadResponseSerializer<Any>
-    {
+        -> DownloadResponseSerializer<Any> {
         return DownloadResponseSerializer { _, response, fileURL, error in
             guard error == nil else { return .failure(error!) }
 
@@ -580,8 +568,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         options: JSONSerialization.ReadingOptions = .allowFragments,
         completionHandler: @escaping (DownloadResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.jsonResponseSerializer(options: options),
@@ -607,8 +594,7 @@ extension Request {
         response: HTTPURLResponse?,
         data: Data?,
         error: Error?)
-        -> Result<Any>
-    {
+        -> Result<Any> {
         guard error == nil else { return .failure(error!) }
 
         if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) }
@@ -635,8 +621,7 @@ extension DataRequest {
     /// - returns: A property list object response serializer.
     public static func propertyListResponseSerializer(
         options: PropertyListSerialization.ReadOptions = [])
-        -> DataResponseSerializer<Any>
-    {
+        -> DataResponseSerializer<Any> {
         return DataResponseSerializer { _, response, data, error in
             return Request.serializeResponsePropertyList(options: options, response: response, data: data, error: error)
         }
@@ -653,8 +638,7 @@ extension DataRequest {
         queue: DispatchQueue? = nil,
         options: PropertyListSerialization.ReadOptions = [],
         completionHandler: @escaping (DataResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DataRequest.propertyListResponseSerializer(options: options),
@@ -672,8 +656,7 @@ extension DownloadRequest {
     /// - returns: A property list object response serializer.
     public static func propertyListResponseSerializer(
         options: PropertyListSerialization.ReadOptions = [])
-        -> DownloadResponseSerializer<Any>
-    {
+        -> DownloadResponseSerializer<Any> {
         return DownloadResponseSerializer { _, response, fileURL, error in
             guard error == nil else { return .failure(error!) }
 
@@ -701,8 +684,7 @@ extension DownloadRequest {
         queue: DispatchQueue? = nil,
         options: PropertyListSerialization.ReadOptions = [],
         completionHandler: @escaping (DownloadResponse<Any>) -> Void)
-        -> Self
-    {
+        -> Self {
         return response(
             queue: queue,
             responseSerializer: DownloadRequest.propertyListResponseSerializer(options: options),
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ServerTrustPolicy.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ServerTrustPolicy.swift
index 1ad3530b2338b6b4520409298dae227c817f654f..1553357c4c48d6206f423fe103b0898f8b24df44 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ServerTrustPolicy.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/ServerTrustPolicy.swift
@@ -249,7 +249,6 @@ public enum ServerTrustPolicy {
             let unspecified = SecTrustResultType.unspecified
             let proceed = SecTrustResultType.proceed
 
-
             isValid = result == unspecified || result == proceed
         }
 
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/SessionDelegate.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/SessionDelegate.swift
index d38c253ba5b955ed9303c43bea6bc4feca935448..6de31dbe4d05ef5b7add89da9ceb6dedc11288e9 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/SessionDelegate.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/SessionDelegate.swift
@@ -255,8 +255,7 @@ extension SessionDelegate: URLSessionDelegate {
     open func urlSession(
         _ session: URLSession,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         guard sessionDidReceiveChallengeWithCompletion == nil else {
             sessionDidReceiveChallengeWithCompletion?(session, challenge, completionHandler)
             return
@@ -315,8 +314,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         task: URLSessionTask,
         willPerformHTTPRedirection response: HTTPURLResponse,
         newRequest request: URLRequest,
-        completionHandler: @escaping (URLRequest?) -> Void)
-    {
+        completionHandler: @escaping (URLRequest?) -> Void) {
         guard taskWillPerformHTTPRedirectionWithCompletion == nil else {
             taskWillPerformHTTPRedirectionWithCompletion?(session, task, response, request, completionHandler)
             return
@@ -342,8 +340,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         _ session: URLSession,
         task: URLSessionTask,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         guard taskDidReceiveChallengeWithCompletion == nil else {
             taskDidReceiveChallengeWithCompletion?(session, task, challenge, completionHandler)
             return
@@ -372,8 +369,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
     open func urlSession(
         _ session: URLSession,
         task: URLSessionTask,
-        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void)
-    {
+        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) {
         guard taskNeedNewBodyStreamWithCompletion == nil else {
             taskNeedNewBodyStreamWithCompletion?(session, task, completionHandler)
             return
@@ -398,8 +394,7 @@ extension SessionDelegate: URLSessionTaskDelegate {
         task: URLSessionTask,
         didSendBodyData bytesSent: Int64,
         totalBytesSent: Int64,
-        totalBytesExpectedToSend: Int64)
-    {
+        totalBytesExpectedToSend: Int64) {
         if let taskDidSendBodyData = taskDidSendBodyData {
             taskDidSendBodyData(session, task, bytesSent, totalBytesSent, totalBytesExpectedToSend)
         } else if let delegate = self[task]?.delegate as? UploadTaskDelegate {
@@ -506,8 +501,7 @@ extension SessionDelegate: URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         didReceive response: URLResponse,
-        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void)
-    {
+        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
         guard dataTaskDidReceiveResponseWithCompletion == nil else {
             dataTaskDidReceiveResponseWithCompletion?(session, dataTask, response, completionHandler)
             return
@@ -530,8 +524,7 @@ extension SessionDelegate: URLSessionDataDelegate {
     open func urlSession(
         _ session: URLSession,
         dataTask: URLSessionDataTask,
-        didBecome downloadTask: URLSessionDownloadTask)
-    {
+        didBecome downloadTask: URLSessionDownloadTask) {
         if let dataTaskDidBecomeDownloadTask = dataTaskDidBecomeDownloadTask {
             dataTaskDidBecomeDownloadTask(session, dataTask, downloadTask)
         } else {
@@ -567,8 +560,7 @@ extension SessionDelegate: URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         willCacheResponse proposedResponse: CachedURLResponse,
-        completionHandler: @escaping (CachedURLResponse?) -> Void)
-    {
+        completionHandler: @escaping (CachedURLResponse?) -> Void) {
         guard dataTaskWillCacheResponseWithCompletion == nil else {
             dataTaskWillCacheResponseWithCompletion?(session, dataTask, proposedResponse, completionHandler)
             return
@@ -602,8 +594,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
     open func urlSession(
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
-        didFinishDownloadingTo location: URL)
-    {
+        didFinishDownloadingTo location: URL) {
         if let downloadTaskDidFinishDownloadingToURL = downloadTaskDidFinishDownloadingToURL {
             downloadTaskDidFinishDownloadingToURL(session, downloadTask, location)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -626,8 +617,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
         downloadTask: URLSessionDownloadTask,
         didWriteData bytesWritten: Int64,
         totalBytesWritten: Int64,
-        totalBytesExpectedToWrite: Int64)
-    {
+        totalBytesExpectedToWrite: Int64) {
         if let downloadTaskDidWriteData = downloadTaskDidWriteData {
             downloadTaskDidWriteData(session, downloadTask, bytesWritten, totalBytesWritten, totalBytesExpectedToWrite)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -655,8 +645,7 @@ extension SessionDelegate: URLSessionDownloadDelegate {
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
         didResumeAtOffset fileOffset: Int64,
-        expectedTotalBytes: Int64)
-    {
+        expectedTotalBytes: Int64) {
         if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset {
             downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes)
         } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate {
@@ -710,8 +699,7 @@ extension SessionDelegate: URLSessionStreamDelegate {
         _ session: URLSession,
         streamTask: URLSessionStreamTask,
         didBecome inputStream: InputStream,
-        outputStream: OutputStream)
-    {
+        outputStream: OutputStream) {
         streamTaskDidBecomeInputAndOutputStreams?(session, streamTask, inputStream, outputStream)
     }
 }
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/SessionManager.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/SessionManager.swift
index 9bd8b540ae84200dbfdb79c920c60eaefcea45d7..dac27dae99ef8e49c132d9859959ad3fa87fd848 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/SessionManager.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/SessionManager.swift
@@ -166,8 +166,7 @@ open class SessionManager {
     public init(
         configuration: URLSessionConfiguration = URLSessionConfiguration.default,
         delegate: SessionDelegate = SessionDelegate(),
-        serverTrustPolicyManager: ServerTrustPolicyManager? = nil)
-    {
+        serverTrustPolicyManager: ServerTrustPolicyManager? = nil) {
         self.delegate = delegate
         self.session = URLSession(configuration: configuration, delegate: delegate, delegateQueue: nil)
 
@@ -185,8 +184,7 @@ open class SessionManager {
     public init?(
         session: URLSession,
         delegate: SessionDelegate,
-        serverTrustPolicyManager: ServerTrustPolicyManager? = nil)
-    {
+        serverTrustPolicyManager: ServerTrustPolicyManager? = nil) {
         guard delegate === session.delegate else { return nil }
 
         self.delegate = delegate
@@ -229,8 +227,7 @@ open class SessionManager {
         parameters: Parameters? = nil,
         encoding: ParameterEncoding = URLEncoding.default,
         headers: HTTPHeaders? = nil)
-        -> DataRequest
-    {
+        -> DataRequest {
         var originalRequest: URLRequest?
 
         do {
@@ -319,8 +316,7 @@ open class SessionManager {
         encoding: ParameterEncoding = URLEncoding.default,
         headers: HTTPHeaders? = nil,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             let encodedURLRequest = try encoding.encode(urlRequest, with: parameters)
@@ -346,8 +342,7 @@ open class SessionManager {
     open func download(
         _ urlRequest: URLRequestConvertible,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let urlRequest = try urlRequest.asURLRequest()
             return download(.request(urlRequest), to: destination)
@@ -383,8 +378,7 @@ open class SessionManager {
     open func download(
         resumingWith resumeData: Data,
         to destination: DownloadRequest.DownloadFileDestination? = nil)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         return download(.resumeData(resumeData), to: destination)
     }
 
@@ -393,8 +387,7 @@ open class SessionManager {
     private func download(
         _ downloadable: DownloadRequest.Downloadable,
         to destination: DownloadRequest.DownloadFileDestination?)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         do {
             let task = try downloadable.task(session: session, adapter: adapter, queue: queue)
             let download = DownloadRequest(session: session, requestTask: .download(downloadable, task))
@@ -415,8 +408,7 @@ open class SessionManager {
         _ downloadable: DownloadRequest.Downloadable?,
         to destination: DownloadRequest.DownloadFileDestination?,
         failedWith error: Error)
-        -> DownloadRequest
-    {
+        -> DownloadRequest {
         var downloadTask: Request.RequestTask = .download(nil, nil)
 
         if let downloadable = downloadable {
@@ -457,8 +449,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(fileURL, with: urlRequest)
@@ -503,8 +494,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(data, with: urlRequest)
@@ -549,8 +539,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil)
-        -> UploadRequest
-    {
+        -> UploadRequest {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
             return upload(stream, with: urlRequest)
@@ -610,8 +599,7 @@ open class SessionManager {
         to url: URLConvertible,
         method: HTTPMethod = .post,
         headers: HTTPHeaders? = nil,
-        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?)
-    {
+        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) {
         do {
             let urlRequest = try URLRequest(url: url, method: method, headers: headers)
 
@@ -653,8 +641,7 @@ open class SessionManager {
         multipartFormData: @escaping (MultipartFormData) -> Void,
         usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold,
         with urlRequest: URLRequestConvertible,
-        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?)
-    {
+        encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) {
         DispatchQueue.global(qos: .utility).async {
             let formData = MultipartFormData()
             multipartFormData(formData)
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/TaskDelegate.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/TaskDelegate.swift
index 06077587d24517d21274783d80df6327ad41ed98..74491f14e88cc25c81201b477aa24617e6b67388 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/TaskDelegate.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/TaskDelegate.swift
@@ -94,8 +94,7 @@ open class TaskDelegate: NSObject {
         task: URLSessionTask,
         willPerformHTTPRedirection response: HTTPURLResponse,
         newRequest request: URLRequest,
-        completionHandler: @escaping (URLRequest?) -> Void)
-    {
+        completionHandler: @escaping (URLRequest?) -> Void) {
         var redirectRequest: URLRequest? = request
 
         if let taskWillPerformHTTPRedirection = taskWillPerformHTTPRedirection {
@@ -110,8 +109,7 @@ open class TaskDelegate: NSObject {
         _ session: URLSession,
         task: URLSessionTask,
         didReceive challenge: URLAuthenticationChallenge,
-        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)
-    {
+        completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
         var disposition: URLSession.AuthChallengeDisposition = .performDefaultHandling
         var credential: URLCredential?
 
@@ -150,8 +148,7 @@ open class TaskDelegate: NSObject {
     func urlSession(
         _ session: URLSession,
         task: URLSessionTask,
-        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void)
-    {
+        needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) {
         var bodyStream: InputStream?
 
         if let taskNeedNewBodyStream = taskNeedNewBodyStream {
@@ -237,8 +234,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         didReceive response: URLResponse,
-        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void)
-    {
+        completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
         var disposition: URLSession.ResponseDisposition = .allow
 
         expectedContentLength = response.expectedContentLength
@@ -253,8 +249,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
     func urlSession(
         _ session: URLSession,
         dataTask: URLSessionDataTask,
-        didBecome downloadTask: URLSessionDownloadTask)
-    {
+        didBecome downloadTask: URLSessionDownloadTask) {
         dataTaskDidBecomeDownloadTask?(session, dataTask, downloadTask)
     }
 
@@ -287,8 +282,7 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate {
         _ session: URLSession,
         dataTask: URLSessionDataTask,
         willCacheResponse proposedResponse: CachedURLResponse,
-        completionHandler: @escaping (CachedURLResponse?) -> Void)
-    {
+        completionHandler: @escaping (CachedURLResponse?) -> Void) {
         var cachedResponse: CachedURLResponse? = proposedResponse
 
         if let dataTaskWillCacheResponse = dataTaskWillCacheResponse {
@@ -343,8 +337,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
     func urlSession(
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
-        didFinishDownloadingTo location: URL)
-    {
+        didFinishDownloadingTo location: URL) {
         temporaryURL = location
 
         guard
@@ -379,8 +372,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
         downloadTask: URLSessionDownloadTask,
         didWriteData bytesWritten: Int64,
         totalBytesWritten: Int64,
-        totalBytesExpectedToWrite: Int64)
-    {
+        totalBytesExpectedToWrite: Int64) {
         if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() }
 
         if let downloadTaskDidWriteData = downloadTaskDidWriteData {
@@ -405,8 +397,7 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate {
         _ session: URLSession,
         downloadTask: URLSessionDownloadTask,
         didResumeAtOffset fileOffset: Int64,
-        expectedTotalBytes: Int64)
-    {
+        expectedTotalBytes: Int64) {
         if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset {
             downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes)
         } else {
@@ -448,8 +439,7 @@ class UploadTaskDelegate: DataTaskDelegate {
         task: URLSessionTask,
         didSendBodyData bytesSent: Int64,
         totalBytesSent: Int64,
-        totalBytesExpectedToSend: Int64)
-    {
+        totalBytesExpectedToSend: Int64) {
         if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() }
 
         if let taskDidSendBodyData = taskDidSendBodyData {
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Timeline.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Timeline.swift
index c5dabd14fe02d3bf06397ade0ed8a4d5f080e6ce..df3797e396f1545c92297d1cb1b7a8785cbc49bb 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Timeline.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Timeline.swift
@@ -64,8 +64,7 @@ public struct Timeline {
         requestStartTime: CFAbsoluteTime = 0.0,
         initialResponseTime: CFAbsoluteTime = 0.0,
         requestCompletedTime: CFAbsoluteTime = 0.0,
-        serializationCompletedTime: CFAbsoluteTime = 0.0)
-    {
+        serializationCompletedTime: CFAbsoluteTime = 0.0) {
         self.requestStartTime = requestStartTime
         self.initialResponseTime = initialResponseTime
         self.requestCompletedTime = requestCompletedTime
diff --git a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Validation.swift b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Validation.swift
index 989ac20091d22de8f876857244f25ef6134b277b..d1ddcccf15696bb67b4af625bc489efbe89558e1 100644
--- a/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Validation.swift
+++ b/samples/client/test/swift4/default/TestClientApp/Pods/Alamofire/Source/Validation.swift
@@ -94,8 +94,7 @@ extension Request {
         statusCode acceptableStatusCodes: S,
         response: HTTPURLResponse)
         -> ValidationResult
-        where S.Iterator.Element == Int
-    {
+        where S.Iterator.Element == Int {
         if acceptableStatusCodes.contains(response.statusCode) {
             return .success
         } else {
@@ -111,8 +110,7 @@ extension Request {
         response: HTTPURLResponse,
         data: Data?)
         -> ValidationResult
-        where S.Iterator.Element == String
-    {
+        where S.Iterator.Element == String {
         guard let data = data, data.count > 0 else { return .success }
 
         guard
diff --git a/samples/client/test/swift4/default/TestClientApp/TestClientApp/AppDelegate.swift b/samples/client/test/swift4/default/TestClientApp/TestClientApp/AppDelegate.swift
index 14cf44ed13ae607a6dffd270a52137afdbdb0ebb..f8a7b948d85c0d93017dd38bbb7e3ebef6fe6d5e 100644
--- a/samples/client/test/swift4/default/TestClientApp/TestClientApp/AppDelegate.swift
+++ b/samples/client/test/swift4/default/TestClientApp/TestClientApp/AppDelegate.swift
@@ -13,7 +13,6 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
 
     var window: UIWindow?
 
-
     func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
         // Override point for customization after application launch.
         return true
@@ -41,6 +40,4 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
         // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClientApp/TestClientApp/ViewController.swift b/samples/client/test/swift4/default/TestClientApp/TestClientApp/ViewController.swift
index b42e16de1eb3df29cf420b7edc278f247455cfed..a5f289c421f112ddc50ca066f218779afd0e3fa8 100644
--- a/samples/client/test/swift4/default/TestClientApp/TestClientApp/ViewController.swift
+++ b/samples/client/test/swift4/default/TestClientApp/TestClientApp/ViewController.swift
@@ -20,6 +20,4 @@ class ViewController: UIViewController {
         // Dispose of any resources that can be recreated.
     }
 
-
 }
-
diff --git a/samples/client/test/swift4/default/TestClientApp/TestClientAppTests/TestClientAppTests.swift b/samples/client/test/swift4/default/TestClientApp/TestClientAppTests/TestClientAppTests.swift
index 7e5522ed7a58c02f1a3d6553dd2056e884931399..7a33147fbf2e45563823947db402c8a3929ad56d 100644
--- a/samples/client/test/swift4/default/TestClientApp/TestClientAppTests/TestClientAppTests.swift
+++ b/samples/client/test/swift4/default/TestClientApp/TestClientAppTests/TestClientAppTests.swift
@@ -12,7 +12,6 @@ import TestClient
 
 class TestClientAppTests: XCTestCase {
 
-
     func testWhenVariableNameIsDifferentFromPropertyName() {
         // This tests to make sure that the swift4 language can handle when
         // we have property names which map to variable names that are not the same.
@@ -39,5 +38,4 @@ class TestClientAppTests: XCTestCase {
         XCTAssertTrue(variableNameTest._for == "Some reason", "Did not decode property name that is a reserved word correctly.")
     }
 
-
 }
diff --git a/samples/client/test/swift4/default/docs/AllPrimitives.md b/samples/client/test/swift4/default/docs/AllPrimitives.md
new file mode 100644
index 0000000000000000000000000000000000000000..1cfa94eaf73bec40909b33b0badaf8d3e2b85914
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/AllPrimitives.md
@@ -0,0 +1,34 @@
+# AllPrimitives
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**myInteger** | **Int** |  | [optional] 
+**myIntegerArray** | **[Int]** |  | [optional] 
+**myLong** | **Int64** |  | [optional] 
+**myLongArray** | **[Int64]** |  | [optional] 
+**myFloat** | **Float** |  | [optional] 
+**myFloatArray** | **[Float]** |  | [optional] 
+**myDouble** | **Double** |  | [optional] 
+**myDoubleArray** | **[Double]** |  | [optional] 
+**myString** | **String** |  | [optional] 
+**myStringArray** | **[String]** |  | [optional] 
+**myBytes** | **Data** |  | [optional] 
+**myBytesArray** | **[Data]** |  | [optional] 
+**myBoolean** | **Bool** |  | [optional] 
+**myBooleanArray** | **[Bool]** |  | [optional] 
+**myDate** | **Date** |  | [optional] 
+**myDateArray** | **[Date]** |  | [optional] 
+**myDateTime** | **Date** |  | [optional] 
+**myDateTimeArray** | **[Date]** |  | [optional] 
+**myFile** | **URL** |  | [optional] 
+**myFileArray** | **[URL]** |  | [optional] 
+**myUUID** | **UUID** |  | [optional] 
+**myUUIDArray** | **[UUID]** |  | [optional] 
+**myStringEnum** | [**StringEnum**](StringEnum.md) |  | [optional] 
+**myStringEnumArray** | [StringEnum] |  | [optional] 
+**myInlineStringEnum** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/BaseCard.md b/samples/client/test/swift4/default/docs/BaseCard.md
new file mode 100644
index 0000000000000000000000000000000000000000..42d41b7db1387f07835144d5238c932b295c927f
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/BaseCard.md
@@ -0,0 +1,10 @@
+# BaseCard
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**cardType** | **String** |  | 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/ErrorInfo.md b/samples/client/test/swift4/default/docs/ErrorInfo.md
new file mode 100644
index 0000000000000000000000000000000000000000..5cc21d73ae18dfb0be5d47100213baddd4ec5b55
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/ErrorInfo.md
@@ -0,0 +1,12 @@
+# ErrorInfo
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**code** | **Int** |  | [optional] 
+**message** | **String** |  | [optional] 
+**details** | **[String]** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/GetAllModelsResult.md b/samples/client/test/swift4/default/docs/GetAllModelsResult.md
new file mode 100644
index 0000000000000000000000000000000000000000..4de449547ae1f5ba0c775fd8a7c9767eb010766d
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/GetAllModelsResult.md
@@ -0,0 +1,12 @@
+# GetAllModelsResult
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**myPrimitiveArray** | [AllPrimitives] |  | [optional] 
+**myPrimitive** | [**AllPrimitives**](AllPrimitives.md) |  | [optional] 
+**myVariableNameTest** | [**VariableNameTest**](VariableNameTest.md) |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/ModelWithPropertiesAndAdditionalProperties.md b/samples/client/test/swift4/default/docs/ModelWithPropertiesAndAdditionalProperties.md
new file mode 100644
index 0000000000000000000000000000000000000000..098c03d68827451fbb18182b0f1ba53d99492793
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/ModelWithPropertiesAndAdditionalProperties.md
@@ -0,0 +1,17 @@
+# ModelWithPropertiesAndAdditionalProperties
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**myIntegerReq** | **Int** |  | 
+**myIntegerOpt** | **Int** |  | [optional] 
+**myPrimitiveReq** | [**AllPrimitives**](AllPrimitives.md) |  | 
+**myPrimitiveOpt** | [**AllPrimitives**](AllPrimitives.md) |  | [optional] 
+**myStringArrayReq** | **[String]** |  | 
+**myStringArrayOpt** | **[String]** |  | [optional] 
+**myPrimitiveArrayReq** | [AllPrimitives] |  | 
+**myPrimitiveArrayOpt** | [AllPrimitives] |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/PersonCard.md b/samples/client/test/swift4/default/docs/PersonCard.md
new file mode 100644
index 0000000000000000000000000000000000000000..385299f87686f797cc6543a30aa0493da0e927fb
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/PersonCard.md
@@ -0,0 +1,11 @@
+# PersonCard
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**firstName** | **String** |  | [optional] 
+**lastName** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/PersonCardAllOf.md b/samples/client/test/swift4/default/docs/PersonCardAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..e4b78f76c9ebf7837570bfa3d23857cefd3ddcec
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/PersonCardAllOf.md
@@ -0,0 +1,11 @@
+# PersonCardAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**firstName** | **String** |  | [optional] 
+**lastName** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/PlaceCard.md b/samples/client/test/swift4/default/docs/PlaceCard.md
new file mode 100644
index 0000000000000000000000000000000000000000..87002357ce0271134f94611c4a52868c1c015226
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/PlaceCard.md
@@ -0,0 +1,11 @@
+# PlaceCard
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**placeName** | **String** |  | [optional] 
+**placeAddress** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/PlaceCardAllOf.md b/samples/client/test/swift4/default/docs/PlaceCardAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..5ed8d8a4d0e9ee268e2692e3ba273b0db5991846
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/PlaceCardAllOf.md
@@ -0,0 +1,11 @@
+# PlaceCardAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**placeName** | **String** |  | [optional] 
+**placeAddress** | **String** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/SampleBase.md b/samples/client/test/swift4/default/docs/SampleBase.md
new file mode 100644
index 0000000000000000000000000000000000000000..a7c7ac9722dbbeaae93a471e85319b902c7cc966
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/SampleBase.md
@@ -0,0 +1,11 @@
+# SampleBase
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**baseClassStringProp** | **String** |  | [optional] 
+**baseClassIntegerProp** | **Int** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/SampleSubClass.md b/samples/client/test/swift4/default/docs/SampleSubClass.md
new file mode 100644
index 0000000000000000000000000000000000000000..435633ccde1cf608ed2cad06190e468dc5c10e17
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/SampleSubClass.md
@@ -0,0 +1,13 @@
+# SampleSubClass
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**baseClassStringProp** | **String** |  | [optional] 
+**baseClassIntegerProp** | **Int** |  | [optional] 
+**subClassStringProp** | **String** |  | [optional] 
+**subClassIntegerProp** | **Int** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/SampleSubClassAllOf.md b/samples/client/test/swift4/default/docs/SampleSubClassAllOf.md
new file mode 100644
index 0000000000000000000000000000000000000000..50a64944e82b6d0d44a27685163616f91d3c2564
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/SampleSubClassAllOf.md
@@ -0,0 +1,11 @@
+# SampleSubClassAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**subClassStringProp** | **String** |  | [optional] 
+**subClassIntegerProp** | **Int** |  | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/StringEnum.md b/samples/client/test/swift4/default/docs/StringEnum.md
new file mode 100644
index 0000000000000000000000000000000000000000..b0009f7e82694641fcfa99a84dafb6fa23db5dfa
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/StringEnum.md
@@ -0,0 +1,9 @@
+# StringEnum
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/docs/Swift4TestAPI.md b/samples/client/test/swift4/default/docs/Swift4TestAPI.md
new file mode 100644
index 0000000000000000000000000000000000000000..b6ea64ba252663e7872741e15b2d4e6bfe4fe2da
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/Swift4TestAPI.md
@@ -0,0 +1,59 @@
+# Swift4TestAPI
+
+All URIs are relative to *http://api.example.com/basePath*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**getAllModels**](Swift4TestAPI.md#getallmodels) | **GET** /allModels | Get all of the models
+
+
+# **getAllModels**
+```swift
+    open class func getAllModels(clientId: String, completion: @escaping (_ data: GetAllModelsResult?, _ error: Error?) -> Void)
+```
+
+Get all of the models
+
+This endpoint tests get a dictionary which contains examples of all of the models.
+
+### Example 
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import TestClient
+
+let clientId = "clientId_example" // String | id that represent the Api client
+
+// Get all of the models
+Swift4TestAPI.getAllModels(clientId: clientId) { (response, error) in
+    guard error == nil else {
+        print(error)
+        return
+    }
+
+    if (response) {
+        dump(response)
+    }
+}
+```
+
+### Parameters
+
+Name | Type | Description  | Notes
+------------- | ------------- | ------------- | -------------
+ **clientId** | **String** | id that represent the Api client | 
+
+### Return type
+
+[**GetAllModelsResult**](GetAllModelsResult.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/samples/client/test/swift4/default/docs/VariableNameTest.md b/samples/client/test/swift4/default/docs/VariableNameTest.md
new file mode 100644
index 0000000000000000000000000000000000000000..d5369e75f1b3567d8fffce1b047dde74936e6fe7
--- /dev/null
+++ b/samples/client/test/swift4/default/docs/VariableNameTest.md
@@ -0,0 +1,12 @@
+# VariableNameTest
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**exampleName** | **String** | This snake-case examle_name property name should be converted to a camelCase variable name like exampleName | [optional] 
+**_for** | **String** | This property name is a reserved word in most languages, including Swift 4. | [optional] 
+**normalName** | **String** | This model object property name should be unchanged from the JSON property name. | [optional] 
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/test/swift4/default/project.yml b/samples/client/test/swift4/default/project.yml
new file mode 100644
index 0000000000000000000000000000000000000000..6fe83fbc9dae5c1b016eba4e9863a2efb5bcace9
--- /dev/null
+++ b/samples/client/test/swift4/default/project.yml
@@ -0,0 +1,15 @@
+name: TestClient
+targets:
+  TestClient:
+    type: framework
+    platform: iOS
+    deploymentTarget: "10.0"
+    sources: [TestClient]
+    info:
+      path: ./Info.plist
+      version: 1.0
+    settings:
+      APPLICATION_EXTENSION_API_ONLY: true
+    scheme: {}
+    dependencies:
+    - carthage: Alamofire
diff --git a/samples/server/petstore/nodejs-express-server/api/openapi.yaml b/samples/server/petstore/nodejs-express-server/api/openapi.yaml
index 401e628f3bd1a2c33efe4c270072ed99796df3c2..1f42f2aa3f88e998d9e19a5914bac519983e81b5 100644
--- a/samples/server/petstore/nodejs-express-server/api/openapi.yaml
+++ b/samples/server/petstore/nodejs-express-server/api/openapi.yaml
@@ -8,7 +8,15 @@ info:
   title: OpenAPI Petstore
   version: 1.0.0
 servers:
-- url: http://petstore.swagger.io/v2
+- url: http://localhost:{port}/api/{basePath}
+  variables:
+    port:
+      enum:
+        - '3000'
+        - '3009'
+      default: '3000'
+    basePath:
+      default: 'v2'
 tags:
 - description: Everything about your Pets
   name: pet
diff --git a/samples/server/petstore/nodejs-express-server/controllers/TestController.js b/samples/server/petstore/nodejs-express-server/controllers/TestController.js
deleted file mode 100644
index 516c135b45becdb19cc78b142c670922cd2aac4d..0000000000000000000000000000000000000000
--- a/samples/server/petstore/nodejs-express-server/controllers/TestController.js
+++ /dev/null
@@ -1,72 +0,0 @@
-const Service = require('../services/Service');
-
-const testItems = require('../tests/testFiles/testItems.json');
-
-class TestService {
-  static testGetController() {
-    return new Promise(
-      async (resolve, reject) => {
-        try {
-          resolve(Service.successResponse(
-            testItems,
-            200,
-          ));
-        } catch (e) {
-          const message = e.getMessage() || 'Could not get items. Server error';
-          reject(Service.rejectResponse(message, 500));
-        }
-      },
-    );
-
-  sendResponse(request, response) {
-    response.status(200);
-    const objectToReturn = {};
-    Object.keys(request.swagger.paramValues).forEach((key) => {
-      const val = request.swagger.paramValues[key];
-      if (val instanceof Object) {
-        objectToReturn[key] = val.originalname || val.name || val;
-      } else {
-        objectToReturn[key] = request.swagger.paramValues[key];
-      }
-    });
-    response.json(objectToReturn);
-  }
-
-  confirmRouteGetSingle(request, response) {
-    this.sendResponse(request, response);
-  }
-
-  confirmRouteGetMany(request, response) {
-    this.sendResponse(request, response);
-  }
-
-  confirmRoutePost(request, response) {
-    this.sendResponse(request, response);
-  }
-
-  confirmRoutePut(request, response) {
-    this.sendResponse(request, response);
-  }
-
-  async testGetController(request, response) {
-    await Controller.handleRequest(request, response, this.service.testGetController);
-  }
-
-  async testPostController(request, response) {
-    await Controller.handleRequest(request, response, this.service.testPostController);
-  }
-
-  async testPutController(request, response) {
-    await Controller.handleRequest(request, response, this.service.testPutController);
-  }
-
-  async testDeleteController(request, response) {
-    await Controller.handleRequest(request, response, this.service.testDeleteController);
-  }
-
-  async testFindByIdController(request, response) {
-    await Controller.handleRequest(request, response, this.service.testFindByIdController);
-  }
-}
-
-module.exports = TestController;
diff --git a/samples/server/petstore/nodejs-express-server/controllers/index.js b/samples/server/petstore/nodejs-express-server/controllers/index.js
index 3dc796c1e5071b11359cdb1656e15d74f2f96c70..0ad912de20512c13fddbb3d38451f7586a19d553 100644
--- a/samples/server/petstore/nodejs-express-server/controllers/index.js
+++ b/samples/server/petstore/nodejs-express-server/controllers/index.js
@@ -1,11 +1,9 @@
 const PetController = require('./PetController');
 const StoreController = require('./StoreController');
 const UserController = require('./UserController');
-const TestController = require('./TestController');
 
 module.exports = {
   PetController,
   StoreController,
   UserController,
-  TestController,
 };
diff --git a/samples/server/petstore/nodejs-express-server/models/Category.js b/samples/server/petstore/nodejs-express-server/models/Category.js
new file mode 100644
index 0000000000000000000000000000000000000000..01d408c7512a63f94f883824488485c9ef183017
--- /dev/null
+++ b/samples/server/petstore/nodejs-express-server/models/Category.js
@@ -0,0 +1,21 @@
+const ono = require('ono');
+const Model = require('./Model');
+
+class Category {
+  constructor(name, id) {
+    const validationErrors = (Model.validateModel(Category, {name, id}));
+    if (validationErrors.length === 0) {
+      this.id = id;
+      this.name = name;
+    } else {
+      throw ono('Tried to create an invalid Category instance', {errors: validationErrors});
+    }
+  }
+}
+
+Category.types = {
+  id: 'integer',
+  name: 'string',
+};
+
+module.exports = Category;
diff --git a/samples/server/petstore/nodejs-express-server/models/Model.js b/samples/server/petstore/nodejs-express-server/models/Model.js
new file mode 100644
index 0000000000000000000000000000000000000000..d60aabb4ece5588df9177921778ac65013fedc00
--- /dev/null
+++ b/samples/server/petstore/nodejs-express-server/models/Model.js
@@ -0,0 +1,47 @@
+class Model {
+  static validateModel(modelClass, variables) {
+    const invalidArray = [];
+    Object.entries(variables).forEach(([key, value]) => {
+      const typeToCheck = modelClass.types[key];
+      switch (typeToCheck) {
+        case 'string':
+          if (!(typeof value === 'string' || value instanceof String)) {
+            invalidArray.push({ key, expectedType: typeToCheck, value });
+          }
+          break;
+        case 'number':
+        case 'integer':
+          if (!(typeof value === 'number' && !Number.isNaN(value))) {
+            invalidArray.push({ key, expectedType: typeToCheck, value });
+          }
+          break;
+        case 'array':
+          if (!(value && typeof value === 'object' && value.constructor === Array)) {
+            invalidArray.push({ key, expectedType: typeToCheck, value });
+          }
+          break;
+        case 'object':
+          if (!(value && typeof value === 'object' && value.constructor === Array)) {
+            invalidArray.push({ key, expectedType: typeToCheck, value });
+          }
+          break;
+        case 'boolean':
+          if (!(typeof value === 'boolean')) {
+            invalidArray.push({ key, expectedType: typeToCheck, value });
+          }
+          break;
+        default:
+          break;
+      }
+    });
+    modelClass.required.forEach((requiredFieldName) => {
+      if (variables[requiredFieldName] === undefined || variables[requiredFieldName] === '') {
+        invalidArray.push(
+          { field: requiredFieldName, required: true, value: variables[requiredFieldName] },
+        );
+      }
+    });
+    return invalidArray;
+  }
+}
+module.exports = Model;
diff --git a/samples/server/petstore/nodejs-express-server/models/Pet.js b/samples/server/petstore/nodejs-express-server/models/Pet.js
new file mode 100644
index 0000000000000000000000000000000000000000..cecf677196aa505bdd5c4d6a39c984799f6201de
--- /dev/null
+++ b/samples/server/petstore/nodejs-express-server/models/Pet.js
@@ -0,0 +1,35 @@
+const ono = require('ono');
+const Model = require('./Model');
+const Tag = require('./Tag');
+const Category = require('./Category');
+
+class Pet {
+  constructor(photoUrls, name, id, tags, status, category) {
+    const validationErrors = Model.validateModel(Pet, {
+      photoUrls, name, id, tags, status, category,
+    });
+    if (validationErrors.length === 0) {
+      this.photoUrls = photoUrls;
+      this.name = name;
+      this.id = id;
+      this.tags = tags.map(t => new Tag(...t));
+      this.status = status;
+      this.category = new Category(category);
+    } else {
+      throw ono('Tried to create an invalid Pet instance', { errors: validationErrors });
+    }
+  }
+}
+
+Pet.types = {
+  photoUrls: 'array',
+  name: 'string',
+  id: 'string',
+  tags: 'array',
+  status: 'string',
+  category: 'object',
+};
+
+Pet.required = ['name', 'photoUrls'];
+
+module.exports = Pet;
diff --git a/samples/server/petstore/nodejs-express-server/models/Tag.js b/samples/server/petstore/nodejs-express-server/models/Tag.js
new file mode 100644
index 0000000000000000000000000000000000000000..64f2c3e78deb7eba1e85a2d4116535a5e3acf571
--- /dev/null
+++ b/samples/server/petstore/nodejs-express-server/models/Tag.js
@@ -0,0 +1,17 @@
+const ono = require('ono');
+const Model = require('./Model');
+
+class Tag {
+  constructor(name, id) {
+    const validationErrors = Model.validateModel(Tag,
+      { name, id });
+    if (validationErrors.length === 0) {
+      this.name = name;
+      this.id = id;
+    } else {
+      throw ono('Tried to create an invalid Tag instance', { errors: validationErrors });
+    }
+  }
+}
+
+module.exports = Tag;
diff --git a/samples/server/petstore/nodejs-express-server/models/index.js b/samples/server/petstore/nodejs-express-server/models/index.js
new file mode 100644
index 0000000000000000000000000000000000000000..66963054a241d78c8b87d7804e310b0e7222d717
--- /dev/null
+++ b/samples/server/petstore/nodejs-express-server/models/index.js
@@ -0,0 +1,9 @@
+const CategoryModel = require('./Category');
+const PetModel = require('./Pet');
+const TagModel = require('./Tag');
+
+module.exports = {
+  CategoryModel,
+  PetModel,
+  TagModel,
+};
diff --git a/samples/server/petstore/nodejs-express-server/package.json b/samples/server/petstore/nodejs-express-server/package.json
index 18e7d92069f9d07595e26b14a6478e2576808001..ed38f18c8d3e7e9fb31f33401229609a6dbe44fc 100644
--- a/samples/server/petstore/nodejs-express-server/package.json
+++ b/samples/server/petstore/nodejs-express-server/package.json
@@ -8,7 +8,8 @@
     "start": "node index.js"
   },
   "keywords": [
-    "openapi-generator", "openapi"
+    "openapi-generator",
+    "openapi"
   ],
   "license": "Unlicense",
   "private": true,
@@ -20,6 +21,9 @@
     "express": "^4.16.4",
     "express-openapi-validator": "^1.0.0",
     "js-yaml": "^3.3.0",
+    "jstoxml": "^1.5.0",
+    "ono": "^5.0.1",
+    "openapi-sampler": "^1.0.0-beta.15",
     "swagger-express-middleware": "^2.0.2",
     "swagger-tools": "^0.10.4",
     "swagger-ui-express": "^4.0.2",
@@ -35,5 +39,10 @@
     "eslint-plugin-import": "^2.17.2",
     "form-data": "^2.3.3",
     "mocha": "^6.1.4"
+  },
+  "eslintConfig": {
+    "env": {
+      "node": true
+    }
   }
 }
diff --git a/samples/server/petstore/nodejs-express-server/tests/SwaggerRouterTests.js b/samples/server/petstore/nodejs-express-server/tests/SwaggerRouterTests.js
deleted file mode 100644
index efe39ae5ffb9717599465c3de9572afe87d41c3f..0000000000000000000000000000000000000000
--- a/samples/server/petstore/nodejs-express-server/tests/SwaggerRouterTests.js
+++ /dev/null
@@ -1,164 +0,0 @@
-const path = require('path');
-const fs = require('fs');
-const { AssertionError } = require('assert');
-const {
-  describe, before, after, it,
-} = require('mocha');
-const chai = require('chai');
-const chaiAsPromised = require('chai-as-promised');
-const { get, post, put } = require('axios');
-const FormData = require('form-data');
-
-const logger = require('./logger');
-const config = require('./config');
-const App = require('../app');
-
-// IMPORTANT CHANGE: WORKING ON TEST SWAGGER FILE
-
-config.OPENAPI_YAML = path.join(__dirname, 'testFiles', 'swagger.yaml');
-
-const app = new App(config);
-chai.use(chaiAsPromised);
-chai.should();
-
-describe('Tests for confirming that the Swagger router works as expected', () => {
-  const pathVarValue = 123;
-  const urlPath = `${config.FULL_PATH}/test/${pathVarValue}?queryOptionalNumber=2&queryRequiredString=sss`;
-  const headerRequiredArray = [1, 2, 3];
-  before(async () => {
-    try {
-      await app.launch();
-      logger.info('express server launched\n');
-    } catch (error) {
-      logger.info(error);
-      await app.close();
-      throw (error);
-    }
-  });
-
-  after(async () => {
-    await app.close()
-      .catch(error => logger.error(error));
-    logger.error('express server closed');
-  });
-
-  it('Should handle variables sent in the header',
-    async () => {
-      try {
-        const headerOptionalBool = false;
-        const headers = { headerOptionalBool, headerRequiredArray };
-        const allHeadersResponse = await get(urlPath, { headers });
-        allHeadersResponse.status.should.equal(200, 'Expecting a successful allHeadersResponse');
-        allHeadersResponse.data.should.have.property('headerOptionalBool').and.equal(headerOptionalBool);
-        allHeadersResponse.data.should.have.property('headerRequiredArray');
-        allHeadersResponse.data.headerRequiredArray
-          .should.have.deep.members(headerRequiredArray);
-        const onlyRequiredResponse = await get(urlPath, { headers: { headerRequiredArray } });
-        onlyRequiredResponse.status.should.equal(200, 'Expecting a successful onlyRequiredResponse');
-        onlyRequiredResponse.data.should.have.property('headerOptionalBool').and.equal(headerOptionalBool);
-        onlyRequiredResponse.data.should.have.property('headerRequiredArray');
-        onlyRequiredResponse.data.headerRequiredArray.should.have.deep.members(headerRequiredArray);
-        await get(urlPath, { headers: { headerOptionalBool } })
-          .catch((error => error.response.status.should.equal(400)));
-      } catch (error) {
-        if (error.response && error.response.data) {
-          logger.error(JSON.stringify(error.response.data));
-        } else {
-          logger.error(error);
-        }
-        error.should.have.property('response');
-        throw new Error(error);
-      }
-    });
-
-  it('Should handle variables sent in the path',
-    async () => {
-      try {
-        const headers = { headerRequiredArray };
-        const correctPathVarResponse = await get(urlPath, { headers });
-        correctPathVarResponse.status.should.equal(200);
-        correctPathVarResponse.data.should.have.property('pathRequiredNumber').and.equal(pathVarValue);
-        const pathVarNotInt = `${config.FULL_PATH}/test/aaa?queryOptionalNumber=2&queryRequiredString=sss`;
-        await get(pathVarNotInt, { headers: { headers } })
-          .catch((error => error.response.status.should.equal(400)));
-      } catch (error) {
-        logger.error(error);
-        error.should.have.property('response');
-        throw new Error(error);
-      }
-    });
-
-  it('Should handle variables sent in the queryString',
-    async () => {
-      try {
-        const headers = { headerRequiredArray };
-        // const allHeadersResponse = await get(urlPath, { headers });
-        const queryRequiredString = 'sss';
-        const noOptionalQueryUrl = `${config.FULL_PATH}/test/${pathVarValue}/?queryRequiredString=${queryRequiredString}`;
-        const noOptionalQueryResponse = await get(noOptionalQueryUrl, { headers });
-        noOptionalQueryResponse.status.should.equal(200, 'Expecting a successful allHeadersResponse');
-        noOptionalQueryResponse.data.should.have.property('queryRequiredString').and.equal(queryRequiredString);
-        noOptionalQueryResponse.data.should.have.property('queryOptionalNumber').and.equal(1);
-
-        const noRequiredQueryUrl = `${config.FULL_PATH}/test/${pathVarValue}`;
-        await get(noRequiredQueryUrl, headers)
-          .catch((error => error.response.status.should.equal(400)));
-      } catch (error) {
-        logger.error(error);
-        error.should.have.property('response');
-        throw new Error(error);
-      }
-    });
-
-  it('Should handle variables sent in the body',
-    async () => {
-      try {
-        const fullPathURL = `${config.FULL_PATH}/test/`;
-        const body = { firstName: 'Foo', lastName: 'Bar' };
-        const fullBodyResponse = await post(fullPathURL, body,
-          { headers: { headerRequiredArray } });
-        fullBodyResponse.status.should.equal(200);
-        await post(fullPathURL, { firstName: 'foo' },
-          { headers: { headerRequiredArray } })
-          .then(response => response.status.should.equal(200));
-        await post(fullPathURL, { lastName: 'bar' },
-          { headers: { headerRequiredArray } })
-          .catch(error => error.response.status.should.equal(400));
-      } catch (error) {
-        error.should.have.property('response');
-        console.error(JSON.stringify(error.response.data));
-      }
-    });
-
-  it('Should handle variables sent in the formData',
-    async () => {
-      try {
-        const fullPathURL = `${config.FULL_PATH}/test/123`;
-        const formData = new FormData();
-        const person = {
-          firstName: 'Foo',
-          lastName: 'Bar',
-          image: fs.createReadStream(path.join(__dirname, 'testFiles', 'pet.json')),
-        };
-        Object.keys(person).forEach(key => formData.append(key, person[key]));
-        const formResponse = await put(fullPathURL, formData,
-          {
-            headers: formData.getHeaders(),
-          });
-        formResponse.status.should.equal(200);
-        Object.keys(person).forEach((nameKey) => {
-          formResponse.data.should.have.property(nameKey);
-          if (person[nameKey] instanceof String) {
-            formResponse.data[nameKey].should.equal(person[nameKey]);
-          }
-        });
-      } catch (error) {
-        if (error instanceof AssertionError) {
-          throw error;
-        }
-        error.should.have.property('response');
-        console.error(JSON.stringify(error.response.data));
-        throw new Error(error);
-      }
-    });
-});
diff --git a/samples/server/petstore/nodejs-express-server/tests/routingTests.js b/samples/server/petstore/nodejs-express-server/tests/routingTests.js
new file mode 100644
index 0000000000000000000000000000000000000000..7018c8fc5a86fd3552b531f487742d4a021e56ff
--- /dev/null
+++ b/samples/server/petstore/nodejs-express-server/tests/routingTests.js
@@ -0,0 +1,147 @@
+/**
+ * The purpose of these tests is to confirm that every path in the openapi spec, if built properly,
+ * returns a valid 200, with a simple text response.
+ * The codeGen will generate a response string including the name of the operation that was called.
+ * These tests confirm that the codeGen worked as expected.
+ * Once we start adding our own business logic, these
+ * tests will fail. It is recommended to keep these tests updated with the code changes.
+ */
+const {
+  describe, before, after, it,
+} = require('mocha');
+const assert = require('assert').strict;
+const chai = require('chai');
+const chaiAsPromised = require('chai-as-promised');
+const axios = require('axios');
+const yamljs = require('yamljs');
+const openApiSampler = require('openapi-sampler');
+const jstoxml = require('jstoxml');
+const logger = require('./logger');
+const config = require('./config');
+const App = require('../app');
+
+const app = new App(config);
+chai.use(chaiAsPromised);
+chai.should();
+
+
+const pathPrefix = `${config.URL_PATH}:${config.URL_PORT}/api/v2`;
+const spec = yamljs.load(config.OPENAPI_YAML);
+
+const parseParameters = (originalPath, schemaParameters) => {
+  let path = originalPath;
+  const headers = {};
+  const queryParams = [];
+  schemaParameters.forEach((parameter) => {
+    const parameterValue = parameter.example || openApiSampler.sample(parameter.schema);
+    switch (parameter.in) {
+      case 'header':
+        headers[parameter.name] = parameterValue;
+        break;
+      case 'path':
+        path = path.replace(`{${parameter.name}}`, parameterValue);
+        break;
+      case 'query':
+        queryParams.push(`${parameter.name}=${parameterValue}`);
+        break;
+      default:
+        break;
+    }
+  });
+  return { path, headers, queryString: queryParams.join('&') };
+};
+
+const buildRequestObject = (pathEndpoint, method, operationObject, requestsArray) => {
+  logger.info(`method: ${method}`);
+  let headers = {};
+  let requestBody = {};
+  let queryString = '';
+  let path = pathEndpoint;
+  if (operationObject.parameters !== undefined) {
+    logger.info('this is a request with parameters');
+    ({ path, headers, queryString } = parseParameters(pathEndpoint, operationObject.parameters));
+    if (queryString.length > 0) {
+      path += `?${queryString}`;
+    }
+    Object.entries(headers).forEach(([headerName, headerValue]) => {
+      headers[headerName] = headerValue;
+    });
+  }
+  if (operationObject.requestBody !== undefined) {
+    logger.info('This is a request with a body');
+    const content = Object.entries(operationObject.requestBody.content);
+    content.forEach(([contentType, contentObject]) => {
+      requestBody = openApiSampler.sample(contentObject.schema, {}, spec);
+      let requestXML;
+      if (contentType === 'application/xml') {
+        requestXML = jstoxml.toXML(requestBody);
+      }
+      headers['Content-Type'] = contentType;
+      requestsArray.push({
+        method,
+        path,
+        body: requestXML || requestBody,
+        headers,
+      });
+    });
+  } else {
+    requestsArray.push({
+      method,
+      path,
+      headers,
+    });
+  }
+};
+
+const getApiRequestsData = (apiSchema) => {
+  const requestsArray = [];
+  Object.entries(apiSchema.paths).forEach(([pathEndpoint, pathObject]) => {
+    logger.info(`adding path: ${pathPrefix}${pathEndpoint} to testing array`);
+    Object.entries(pathObject).forEach(([operationMethod, operationObject]) => {
+      buildRequestObject(pathEndpoint, operationMethod, operationObject, requestsArray);
+    });
+  });
+  return requestsArray;
+};
+
+describe('API tests, checking that the codegen generated code that allows all paths specified in schema to work', () => {
+  before(async () => {
+    try {
+      await app.launch();
+      logger.info('express server launched\n');
+    } catch (error) {
+      logger.info(error);
+      await app.close();
+      throw (error);
+    }
+  });
+
+  after(async () => {
+    await app.close()
+      .catch(error => logger.error(error));
+    logger.error('express server closed');
+  });
+
+  const requestsArray = getApiRequestsData(spec);
+  requestsArray.forEach((requestObject) => {
+    it(`should run ${requestObject.method.toUpperCase()} request to ${requestObject.path} and return healthy 200`, async () => {
+      try {
+        const {
+          method, path, body, headers,
+        } = requestObject;
+        const url = `${pathPrefix}${path}`;
+        logger.info(`testing ${method.toUpperCase()} call to ${url}. encoding: ${headers['Content-Type']}`);
+        const response = await axios({
+          method,
+          url,
+          data: body,
+          headers,
+        });
+        response.should.have.property('status');
+        response.status.should.equal(200);
+      } catch (e) {
+        assert.fail(e.message);
+      }
+    });
+  });
+});
diff --git a/samples/server/petstore/php-symfony/SymfonyBundle-php/.gitignore b/samples/server/petstore/php-symfony/SymfonyBundle-php/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..20b7b9897609940c60f1ba1cbbf6da7beee55e88
--- /dev/null
+++ b/samples/server/petstore/php-symfony/SymfonyBundle-php/.gitignore
@@ -0,0 +1,54 @@
+# ref: https://github.com/github/gitignore/blob/master/Symfony.gitignore
+
+# Cache and logs (Symfony2)
+/app/cache/*
+/app/logs/*
+!app/cache/.gitkeep
+!app/logs/.gitkeep
+
+# Email spool folder
+/app/spool/*
+
+# Cache, session files and logs (Symfony3)
+/var/cache/*
+/var/logs/*
+/var/sessions/*
+!var/cache/.gitkeep
+!var/logs/.gitkeep
+!var/sessions/.gitkeep
+
+# Parameters
+/app/config/parameters.yml
+/app/config/parameters.ini
+
+# Managed by Composer
+/app/bootstrap.php.cache
+/var/bootstrap.php.cache
+/bin/*
+!bin/console
+!bin/symfony_requirements
+/vendor/
+
+# Assets and user uploads
+/web/bundles/
+/web/uploads/
+
+# PHPUnit
+/app/phpunit.xml
+/phpunit.xml
+
+# Build data
+/build/
+
+# Composer PHAR
+/composer.phar
+
+# Backup entities generated with doctrine:generate:entities command
+**/Entity/*~
+
+# Embedded web-server pid file
+/.web-server-pid
+
+# From root gitignore
+/Tests/cache/
+/Tests/logs/
\ No newline at end of file