diff --git a/README b/README
index 7cabb38..1809f55 100644
--- a/README
+++ b/README
@@ -9,7 +9,7 @@
     data and push data in real-time to Adobe® Flex® and Adobe AIR™ applications
     for more responsive rich Internet application (RIA) experiences..
 
-    Apache Flex BlazeDS 4.7.2 is an update to the initial release of BlazeDS
+    Apache Flex BlazeDS 4.7.3 is an update to the initial release of BlazeDS
     from the Apache Software Foundation.  Prior to this, releases were provided 
     by Adobe Systems Inc. It is compatible with most code written to target Adobe
     Flex 4.6.
@@ -33,7 +33,7 @@
     For further information visit http://flex.apache.org/download-source.html
 
 
-Building Apache Flex BlazeDS 4.7.2
+Building Apache Flex BlazeDS 4.7.3
 ==================================
 
     Apache Flex BlazeDS is a large project. It requires some build tools which must be
@@ -100,27 +100,27 @@
     <dependency>
         <groupId>org.apache.flex.blazeds</groupId>
         <artifactId>flex-messaging-common</artifactId>
-        <version>4.7.2</version>
+        <version>4.7.3</version>
     </dependency>
     <dependency>
         <groupId>org.apache.flex.blazeds</groupId>
         <artifactId>flex-messaging-core</artifactId>
-        <version>4.7.2</version>
+        <version>4.7.3</version>
     </dependency>
     <dependency>
         <groupId>org.apache.flex.blazeds</groupId>
         <artifactId>flex-messaging-opt</artifactId>
-        <version>4.7.2</version>
+        <version>4.7.3</version>
     </dependency>
     <dependency>
         <groupId>org.apache.flex.blazeds</groupId>
         <artifactId>flex-messaging-proxy</artifactId>
-        <version>4.7.2</version>
+        <version>4.7.3</version>
     </dependency>
     <dependency>
         <groupId>org.apache.flex.blazeds</groupId>
         <artifactId>flex-messaging-remoting</artifactId>
-        <version>4.7.2</version>
+        <version>4.7.3</version>
     </dependency>
 
 
diff --git a/readme.txt b/README-ANT
similarity index 99%
rename from readme.txt
rename to README-ANT
index 56c70aa..e2e6a8f 100755
--- a/readme.txt
+++ b/README-ANT
@@ -1,41 +1,41 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-BlazeDS Build readme file
-
-BlazeDS build script requires that the following products are installed.
-    - ANT 1.7.0
-    - ANT-CONTRIB-1.0b2
-    - Sun JDK 5
-    - JUnit (required in ANT_HOME/lib for "unit" target)
-
-BlazeDS build script requires that the following environment variable are set properly.
-    - JAVA_HOME
-    - ANT_HOME 
-    - JAVA_HOME\bin and ANT_HOME\bin must be on the path.
-
-The build.xml at the top level of the installed BlazeDS will build the product.
-The following steps will create a new version of BlazeDS and the sample applications.
-    - ant clean
-    - ant main
-    - ant checkintests
-
-NOTE: In order to build optional modules you need the following jars: 
-      (1) For weblogic: weblogic.jar
-
-The ant checkintests will verify if the build was successful. This step runs all unit tests developed.
-
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+BlazeDS Build readme file
+
+BlazeDS build script requires that the following products are installed.
+    - ANT 1.7.0
+    - ANT-CONTRIB-1.0b2
+    - Sun JDK 5
+    - JUnit (required in ANT_HOME/lib for "unit" target)
+
+BlazeDS build script requires that the following environment variable are set properly.
+    - JAVA_HOME
+    - ANT_HOME 
+    - JAVA_HOME\bin and ANT_HOME\bin must be on the path.
+
+The build.xml at the top level of the installed BlazeDS will build the product.
+The following steps will create a new version of BlazeDS and the sample applications.
+    - ant clean
+    - ant main
+    - ant checkintests
+
+NOTE: In order to build optional modules you need the following jars: 
+      (1) For weblogic: weblogic.jar
+
+The ant checkintests will verify if the build was successful. This step runs all unit tests developed.
+
diff --git a/RELEASE_NOTES b/RELEASE_NOTES
index ee94e7d..dc2aad7 100644
--- a/RELEASE_NOTES
+++ b/RELEASE_NOTES
@@ -1,8 +1,86 @@
+Apache Flex BlazeDS 4.7.3
+=======================
+
+Apache Flex BlazeDS 4.7.3 is an update to 4.7.2 which adds a new
+blazeds-spring-boot-starter module for easily setting up a BlazeDS server with
+Spring Boot. It also provides Maven archetypes for easily creating new spring-boot
+project that make use of BlazeDS. We also did quite a lot of fine-tuning of the
+security default settings to make BlazeDS more secure.
+
+Starting with 4.7.3 BlazeDS Deserialization of XML is disabled completely per default
+but can easily be enabled in your services-config.xml:
+
+    <channels>
+        <channel-definition id="amf" class="mx.messaging.channels.AMFChannel">
+            <endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf"
+                      class="flex.messaging.endpoints.AMFEndpoint"/>
+            <properties>
+                <serialization>
+                    <allow-xml>true</allow-xml>
+                </serialization>
+            </properties>
+        </channel-definition>
+    </channels>
+
+Also we now enable the ClassDeserializationValidator per default to only allow
+deserialization of whitelisted classes. BlazeDS internally comes with the following
+whitelist:
+
+    flex.messaging.io.amf.ASObject
+    flex.messaging.io.amf.SerializedObject
+    flex.messaging.io.ArrayCollection
+    flex.messaging.io.ArrayList
+    flex.messaging.messages.AcknowledgeMessage
+    flex.messaging.messages.AcknowledgeMessageExt
+    flex.messaging.messages.AsyncMessage
+    flex.messaging.messages.AsyncMessageExt
+    flex.messaging.messages.CommandMessage
+    flex.messaging.messages.CommandMessageExt
+    flex.messaging.messages.ErrorMessage
+    flex.messaging.messages.HTTPMessage
+    flex.messaging.messages.RemotingMessage
+    flex.messaging.messages.SOAPMessage
+    java.lang.Boolean
+    java.lang.Byte
+    java.lang.Character
+    java.lang.Double
+    java.lang.Float
+    java.lang.Integer
+    java.lang.Long
+    java.lang.Object
+    java.lang.Short
+    java.lang.String
+    java.util.ArrayList
+    java.util.Date
+    java.util.HashMap
+    org.w3c.dom.Document
+
+If you need to deserialize any other classes, be sure to register them in your
+services-config.xml:
+
+    <validators>
+        <validator class="flex.messaging.validators.ClassDeserializationValidator">
+            <properties>
+                <allow-classes>
+                    <class name="org.mycoolproject.*"/>
+                    <class name="flex.messaging.messages.*"/>
+                    <class name="flex.messaging.io.amf.ASObject"/>
+                </allow-classes>
+            </properties>
+        </validator>
+    </validators>
+
+(Beware, by manually providing a whitelist the default whitelist is disabled)
+
+Known Issues
+_____________
+FLEX-34648 Memory Leak occurred in AsyncMessage when sending a lot of messages
+
 Apache Flex BlazeDS 4.7.2
 =======================
 
 Apache Flex BlazeDS 4.7.2 is an update to 4.7.1 to allow configuration control
-over allowind document type declarations inside an AMF XML payload.
+over allowing document type declarations inside an AMF XML payload.
 
 Known Issues
 _____________
