diff --git a/.circleci/config.yml b/.circleci/config.yml
index dad7997a8699..a847c8d007e5 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -21,34 +21,34 @@
# THE SOFTWARE.
#
-version: 2
+#version: 2
-jobs:
- sonar-pr:
- docker:
- - image: cimg/openjdk:11.0-node
- steps:
- - checkout
- - restore_cache:
- key: jdp-sonar-pr-{{ checksum "pom.xml" }}
- - run: |
- sudo apt-get update
- sudo apt-get install -y openjdk-11-jdk xvfb
- if [ -n "${CIRCLE_PR_NUMBER}" ]; then
- MAVEN_OPTS="-Xmx3000m" xvfb-run ./mvnw -B clean verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar \
- -Dsonar.pullrequest.key=${CIRCLE_PR_NUMBER} \
- -Dsonar.pullrequest.branch=${CIRCLE_BRANCH} \
- -Dsonar.pullrequest.base=master
- else
- echo "No Sonar PR analysis as this is not a pull request"
- fi
- - save_cache:
- key: jdp-sonar-pr-{{ checksum "pom.xml" }}
- paths:
- - ~/.m2
+#jobs:
+ #sonar-pr:
+ #docker:
+ #- image: cimg/openjdk:11.0-node
+ #steps:
+ #- checkout
+ #- restore_cache:
+ #key: jdp-sonar-pr-{{ checksum "pom.xml" }}
+ #- run: |
+ #sudo apt-get update
+ #sudo apt-get install -y openjdk-11-jdk xvfb
+ #if [ -n "${CIRCLE_PR_NUMBER}" ]; then
+ #MAVEN_OPTS="-Xmx3000m" xvfb-run ./mvnw -B clean verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar \
+ #-Dsonar.pullrequest.key=${CIRCLE_PR_NUMBER} \
+ #-Dsonar.pullrequest.branch=${CIRCLE_BRANCH} \
+ #-Dsonar.pullrequest.base=master
+ #else
+ #echo "No Sonar PR analysis as this is not a pull request"
+ #fi
+ #- save_cache:
+ #key: jdp-sonar-pr-{{ checksum "pom.xml" }}
+ #paths:
+ #- ~/.m2
-workflows:
- version: 2
- all:
- jobs:
- - sonar-pr
+#workflows:
+ #version: 2
+ #all:
+ #jobs:
+ #- sonar-pr
diff --git a/etc/Bass-Drum-1.aif b/etc/Bass-Drum-1.aif
new file mode 100644
index 000000000000..f1eae69db029
Binary files /dev/null and b/etc/Bass-Drum-1.aif differ
diff --git a/etc/Bass-Drum-1.wav b/etc/Bass-Drum-1.wav
new file mode 100644
index 000000000000..566181d942aa
Binary files /dev/null and b/etc/Bass-Drum-1.wav differ
diff --git a/etc/Claim-Check-Pattern.png b/etc/Claim-Check-Pattern.png
new file mode 100644
index 000000000000..a2d8040afaf6
Binary files /dev/null and b/etc/Claim-Check-Pattern.png differ
diff --git a/etc/Closed-Hi-Hat-1.aif b/etc/Closed-Hi-Hat-1.aif
new file mode 100644
index 000000000000..ac248e4f4a57
Binary files /dev/null and b/etc/Closed-Hi-Hat-1.aif differ
diff --git a/etc/Closed-Hi-Hat-1.wav b/etc/Closed-Hi-Hat-1.wav
new file mode 100644
index 000000000000..2320db510273
Binary files /dev/null and b/etc/Closed-Hi-Hat-1.wav differ
diff --git a/etc/Converter.ucls b/etc/Converter.ucls
new file mode 100644
index 000000000000..368657430e2b
--- /dev/null
+++ b/etc/Converter.ucls
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/etc/IdentityMap.png b/etc/IdentityMap.png
new file mode 100644
index 000000000000..1bac10ebf294
Binary files /dev/null and b/etc/IdentityMap.png differ
diff --git a/etc/MarkerDiagram.png b/etc/MarkerDiagram.png
new file mode 100644
index 000000000000..6ed4f9c56780
Binary files /dev/null and b/etc/MarkerDiagram.png differ
diff --git a/etc/MarkerDiagram.ucls b/etc/MarkerDiagram.ucls
new file mode 100644
index 000000000000..0f8376e40e23
--- /dev/null
+++ b/etc/MarkerDiagram.ucls
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/etc/MonoState.ucls b/etc/MonoState.ucls
new file mode 100644
index 000000000000..76b48ad0fa2a
--- /dev/null
+++ b/etc/MonoState.ucls
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/etc/ServiceDiagram.png b/etc/ServiceDiagram.png
new file mode 100644
index 000000000000..885320a4d901
Binary files /dev/null and b/etc/ServiceDiagram.png differ
diff --git a/etc/StateDiagram.png b/etc/StateDiagram.png
new file mode 100644
index 000000000000..38485526d342
Binary files /dev/null and b/etc/StateDiagram.png differ
diff --git a/etc/abstract-document.png b/etc/abstract-document.png
new file mode 100644
index 000000000000..6bc0b29a4e77
Binary files /dev/null and b/etc/abstract-document.png differ
diff --git a/etc/abstract-document.ucls b/etc/abstract-document.ucls
new file mode 100644
index 000000000000..f555394d04c2
--- /dev/null
+++ b/etc/abstract-document.ucls
@@ -0,0 +1,142 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/etc/abstract-document.urm.puml b/etc/abstract-document.urm.puml
new file mode 100644
index 000000000000..9940dc2cfd05
--- /dev/null
+++ b/etc/abstract-document.urm.puml
@@ -0,0 +1,65 @@
+@startuml
+package com.iluwatar.abstractdocument.domain.enums {
+ enum Property {
+ + MODEL {static}
+ + PARTS {static}
+ + PRICE {static}
+ + TYPE {static}
+ + valueOf(name : String) : Property {static}
+ + values() : Property[] {static}
+ }
+}
+package com.iluwatar.abstractdocument.domain {
+ class Car {
+ + Car(properties : Map)
+ }
+ interface HasModel {
+ + getModel() : Optional
+ }
+ interface HasParts {
+ + getParts() : Stream
+ }
+ interface HasPrice {
+ + getPrice() : Optional
+ }
+ interface HasType {
+ + getType() : Optional
+ }
+ class Part {
+ + Part(properties : Map)
+ }
+}
+package com.iluwatar.abstractdocument {
+ abstract class AbstractDocument {
+ - properties : Map
+ # AbstractDocument(properties : Map)
+ + children(key : String, constructor : Function